我正在尝试从某些项目中获取标签,但我找不到给我这些标签的函数。我正在使用GetPlayerItems
Steam Web API 来获取播放器项目,但它不会给我项目标签,我该怎么办?
有没有办法给我标签?
我还有一个问题,有没有一种快速的方法来拉取物品的图像?不是把它存储在我的服务器上?我的意思是像通过蒸汽服务器或其他东西的图像的URL..
我试图GetSchema
找到一个项目的信息,但我真的不明白它是如何工作的。
谢谢!
您需要结合两个单独的 API 调用来将 GetPlayerItems 链接到数据的实际含义。
执行您GetPlayerItems
的呼叫并返回数据。在返回数据中,您将遍历result['items']
以获取玩家物品的列表。
该数组中的一项可能如下所示:
{
"id": 493336261,
"original_id": 493336261,
"defindex": 5050,
"level": 50,
"quality": 6,
"inventory": 2147483948,
"quantity": 1,
"origin": 2,
"attributes": [
{
"defindex": 195,
"value": 1065353216,
"float_value": 1.000000
}
]
},
使用此数据,您可以使用defindex
来查看调用result['items']
返回的数组。GetSchema
您将不得不遍历将GetPlayerItems
defindex 与GetSchema
defindex 进行比较的每个项目。当它匹配时,您就知道该项目是什么。
在上述情况下,5050
是一个Backpack Expander
。您可以通过查看匹配项上的image_url
或image_url_large
值来拉取该项目的图像。GetSchema
对于您提到的“标签”,我假设您的意思是attributes
. 这些可以通过遵循类似的过程进行匹配,但与GetSchema
result['attributes']
数组匹配。同样,您必须遍历所有并比较defindex
值。
对于上面的示例,带有的属性与defindex = 195
此匹配:
{
"name": "always tradable",
"defindex": 195,
"attribute_class": "always_tradable",
"description_string": "#Attrib_Always_Tradable",
"description_format": "value_is_additive",
"effect_type": "negative",
"hidden": true,
"stored_as_integer": false
},
属性中的float_value
of表示该对象具有该属性。所以,这个背包扩展器总是可以交易的。1.0
GetPlayerItems