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

使用API密钥调用Riot Games API遇401错误,Python请求代码排查求助

解决Riot Games API 401未授权问题

你的代码存在两个关键问题导致401错误,以下是具体排查和修复方案:

1. 授权头部字段错误

Riot Games API不采用Authorization: Bearer {API_KEY}的授权格式,正确的头部字段是X-Riot-Token,直接将API密钥作为该字段的值即可。错误的头部格式会被服务器判定为未授权。

2. 请求URL无效

你使用的https://americas.api.riotgames.com/riot不是一个有效的API端点,Riot的所有API请求都需要指定具体的功能路径(比如获取召唤师信息、比赛记录等)。直接请求根路径会触发错误,即使授权正确也无法正常响应。

修改后的代码示例

import os
import requests

API_KEY = os.getenv("riot-key")
# 替换为你实际需要调用的有效API端点,这里以查询召唤师账号信息为例
URL = "https://americas.api.riotgames.com/riot/account/v1/accounts/by-riot-id/你的游戏昵称/你的标签"

headers = {
    "X-Riot-Token": API_KEY  # 使用正确的授权头部字段
}

response = requests.get(URL, headers=headers)

if response.status_code == 200:
    print(response.json())
else:
    print("请求失败,状态码:", response.status_code)
    print("错误详情:", response.text)  # 打印响应文本,便于获取服务器返回的具体错误信息

额外排查建议

  • 验证API密钥加载是否正常:在代码中添加print(API_KEY),确认环境变量riot-key正确加载了密钥,没有为空或出现拼写错误。
  • 检查密钥权限:部分API密钥可能限制了区域或功能范围,确保你的密钥有权访问目标端点。
  • 查看服务器返回的错误文本:通过response.text可以获取Riot服务器给出的具体错误提示(比如密钥过期、端点不存在等),进一步定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 14:55:30