无需Steam API,通过Vanity URL获取SteamID64的合法方案咨询
合法解决方案思路
方案1:通过Steam社区公开数据端点获取(无需API密钥)
Steam提供了无需API密钥的公开数据接口,针对Vanity URL可构造对应请求:
- 对于格式为
https://steamcommunity.com/id/<vanity_name>的地址,拼接为https://steamcommunity.com/id/<vanity_name>?xml=1 - 该接口返回的XML内容里包含
<steamID64>标签,直接提取标签内的内容即可得到目标ID - 在Chrome扩展的
manifest.json中添加"host_permissions": ["https://steamcommunity.com/*"]权限后,就能通过fetch发起请求并解析XML数据。这个接口是Steam官方公开的,属于合法使用范畴。
方案2:通过内容脚本读取Steam社区页面的全局数据
当用户访问Steam个人资料页面时,页面会自动加载全局变量g_rgProfileData,其中的steamid字段就是SteamID64:
- 在Chrome扩展中配置内容脚本,匹配
https://steamcommunity.com/id/*页面规则 - 内容脚本里直接读取
window.g_rgProfileData.steamid即可获取ID - 这种方式是在用户浏览器上下文里提取页面已加载的数据,不属于服务器端抓取,符合Steam使用规范,仅需配置内容脚本的页面匹配权限。
方案3:引导用户手动获取
如果不想依赖网络请求或脚本,可提供简单指引让用户手动操作:
- 让用户打开Steam个人资料页面,右键选择「查看页面源代码」
- 在源代码中搜索
steamid,找到的17位数字串就是SteamID64 - 或者让用户在Steam客户端进入「设置」→「界面」,勾选「显示Steam URL地址栏」,之后在个人资料页面的地址栏右键复制SteamID64。
内容的提问来源于stack exchange,提问作者6haun
相关产品推荐
相关产品推荐

