我正试图从某些项目中获取标签,但我找不到能给我这些标签的功能..
我正在使用Steam网页API中的GetPlayerItems
获取播放器项目,但它不会给我
项目标签,我该怎么办?
有没有办法给我标签?
我有另一个问题, 是否有一种快速的方式来拉动项目的图像?不是通过将其存储在我的服务器上? 我的意思是像通过蒸汽服务器或其他东西的图像的URL ..
我已经尝试GetSchema
查找某个项目的信息,但我真的不知道它是如何工作的。
谢谢!
答案 0 :(得分:2)
您需要结合两个单独的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
属性中的1.0
GetPlayerItems
表示此对象具有该属性。所以,这个背包式扩张器总是可以交易的。