如何从JSON中显示用户清单
CSGO - How to display a users inventory from the JSON
我想做一个系统,得到一个用户的库存,然后显示为图像和名称。我只知道如何做JSON部分,我不确定下一步该做什么。
我现在只有:
http://steamcommunity.com/profiles/<PROFILEID>/inventory/json/753/1
有人能帮我把这些数据变成我正在寻找的吗?
首先-至少对于CS:GO -您正在寻找的URL是:
http://steamcommunity.com/profiles/<PROFILEID>/inventory/json/730/2
URL末尾的两个数字分别是app ID和context ID。《CS:GO》的应用ID是730,而大多数游戏的用户库存使用的是2。
从这个请求返回的JSON是一个格式如下的对象:
{
"success": true,
"rgInventory": { ... },
"rgCurrency": { ... },
"rgDescriptions": { ... },
"more": false,
"more_start": false
}
对于您所描述的用例(获取项目名称和图标),您可以忽略除rgDescriptions
对象之外的所有内容。该对象为用户库存中的每个项目包含一个对象。对象键是将项目的classid
和instanceid
连接起来的结果,但这对您来说并不重要—您可以像处理任何其他对象一样迭代它。
您感兴趣的两个数据点是market_hash_name
,这是项目的名称,和icon_url
,这是显示实际图像所需的一部分。镜像的完整路径是https://steamcommunity-a.akamaihd.net/economy/image/{icon_url}
。例如,这个链接加载图标的G3SG1 |极地迷彩在我的库存。
需要注意的一点是,market_hash_name
包括磨损模式(例如,最小磨损,新出厂等)。如果您不需要这些,您可以直接使用对象中的name
。
相关文章:
- 如何在使用XMLHttpRequest时向用户显示实际的网络错误
- 从Meteor呼叫向用户显示相应的错误消息
- 如何从HTML页面中的用户显示中获取输入
- Google 表格:为特定用户显示不同的行
- 角度 ui-select 绑定到一个属性,但向用户显示另一个属性
- 希望仅为已登录的用户显示链接,否则它显示该链接在AngularJS和NodeJS中被隐藏或禁用
- 向用户显示多条确认消息的最佳方式
- 向用户显示坐标并触发事件
- 如何让网页显示一次,并且不再向用户显示
- 在 chrome 扩展程序中向用户显示消息
- 如何在用户关闭浏览器时向用户显示警报
- 在提交之前操作表单值而不向用户显示
- 更改在带有图像的测验中向用户显示的结果
- 在 PHP 中向随机用户显示 html 内容
- 如何检查网站用户显示的纵横比
- 向用户显示 JSON 时的 XSS
- 为国际用户显示消息
- 在 CRM 2011 上为用户显示/隐藏功能区按钮
- 有没有办法在向用户显示整个地图时隐藏数据库的地图数据
- 如何在不向用户显示更改的情况下调整发送到iframe的表单值