英雄联盟Riot API:如何通过游戏内召唤师昵称获取PUUID
我尝试调用召唤师API接口:
https://region.api.riotgames.com/lol/summoner/v4/summoners/by-name/Executioner?api_key=mykey,甚至遍历了所有服务器区域,但始终无法找到与我当前53级(接近54级)匹配的召唤师信息。请问我可能哪里操作有误?是否我的召唤师名称存在差异?我的游戏内昵称确实是“Executioner”。
以下是可能导致你无法通过API找到自己账号的几个原因及解决办法:
昵称存在隐藏格式问题:
你确认游戏内昵称是“Executioner”,但可能存在肉眼看不到的隐藏字符(比如首尾空格、零宽空格),或者API请求中输入的昵称大小写与实际不符(部分区域API对大小写敏感)。建议直接从游戏内复制昵称,用encodeURIComponent("你的昵称")编码后再替换请求URL里的Executioner,避免格式错误。中国/港澳台区域需使用专属API:
如果你的账号是国服、台服等Garena运营的区域,Riot全球API无法获取这些区域的数据,必须使用腾讯或Garena的专属API接口。这是最容易踩坑的点,很多用户会误以为全球API覆盖所有区域。区域端点格式错误:
即使遍历了所有区域,可能用错了区域代码格式——比如应该用na1而非na,euw1而非euw,Garena区域的端点是sg2.api.riotgames.com这类特殊格式。可以对照Riot官方的区域端点列表逐一验证。API密钥无效或权限不足:
检查请求返回的错误码:如果是401 Unauthorized,说明你的API密钥过期或无效,需要去Riot开发者平台重新生成;如果是404 Not Found才是真的未找到账号。账号数据同步延迟:
刚升级等级、修改昵称或新创建的账号,数据同步到API服务器可能需要几分钟到几小时的时间,可以等待一段时间后再重试。
内容的提问来源于stack exchange,提问作者Executioner

