You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用Minecraft名称可用性API时出现401错误求助

解决Minecraft名称可用性API的401未授权错误

401错误的核心原因是你调用的这个API要求携带有效的Mojang认证令牌,你的代码里缺少了认证请求头,服务器因此拒绝了未授权的访问。

解决步骤:

  1. 获取Mojang Access Token
    该API属于Minecraft官方服务接口,必须通过微软账号OAuth2授权流程获取access token。流程大致为:引导用户登录微软账号,获取授权码,再通过授权码兑换成access token。注意不能硬编码或非法获取用户令牌,必须遵循官方授权规范。

  2. 修改代码添加认证头
    在请求中添加Authorization头,格式为Bearer {你的access token},修改后的代码如下:

def check_username():
    username = username_entry.get().strip()
    url = f"https://api.minecraftservices.com/minecraft/profile/name/{username}/available"
    # 替换为用户通过合法流程获取的access token
    access_token = "USER_VALID_ACCESS_TOKEN"
    headers = {
        "Authorization": f"Bearer {access_token}"
    }
    response = requests.get(url, headers=headers)
    if response.status_code == 200:
        messagebox.showwarning("Username Taken", f"Sorry, the username '{username}' is taken!")
    elif response.status_code == 204:
        messagebox.showinfo("Username Available", f"The username '{username}' is available!")
    else:
        messagebox.showerror("Error", f"Error checking username '{username}': {response.status_code}")

额外注意事项:

  • Access Token有有效期,若后续再次收到401错误,需要重新获取令牌。
  • 确保所有操作符合Mojang服务条款,不要存储或滥用用户的认证信息。

内容的提问来源于stack exchange,提问作者Jesus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 20:32:07