我想制作一个获取用户库存的系统,然后将其显示为图像和名称。我只知道如何做JSON部分,我不确定下一步该做什么。
目前我只有:
http://steamcommunity.com/profiles/<PROFILEID>/inventory/json/753/1
有人能帮助我将数据转换成我想要的数据吗?
答案 0 :(得分:1)
首先关闭 - 对于CS:GO,至少 - 您要查找的网址是:
http://steamcommunity.com/profiles/<PROFILEID>/inventory/json/730/2
URL末尾的两个数字分别指代应用程序ID和上下文ID。 CS:GO的应用ID为730,大多数游戏的上下文ID为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}
。例如,this link加载G3SG1 |的图标极地迷彩在我的库存中。
需要注意的一点是market_hash_name
包括磨损模式(例如,Minimal Wear,Factory New等)。如果您不需要,可以使用对象中的name
。