从 Steam API 捕获 json 数据

Capture json data from Steam API

所以我想做的是 capture/extract 来自 Steams API 的 dota2 英雄的特定数据。我正在使用 C# 通过 this 方法来执行此操作。

https://api.steampowered.com/IEconDOTA2_570/GetHeroes/v0001/?key=2D13D618DA712015812E970165632F02&language=en_us

{
"result": {
    "heroes": [
        {
            "name": "npc_dota_hero_antimage",
            "id": 1,
            "localized_name": "Anti-Mage"
        },
        ]
}

这是我一直在尝试的代码:

WebClient c = new WebClient();
        var data = c.DownloadString("https://api.steampowered.com/IEconDOTA2_570/GetHeroes/v0001/?key=2D13D618DA712015812E970165632F02&language=en_us");

        JObject o = JObject.Parse(data);

        string heroname = (string)o["name"];

但它只是 returns 一个错误,指出 "heroname" 的值为空。

有什么想法吗?

o 将是一个包含一个键的对象:resulto["result"] 将依次包含一个名为 heroes 的密钥。 o["result"]["heroes"] 是一个对象数组。所以 o["result"]["heroes"][0] 将是第一项,而 o["result"]["heroes"][0]["name"] 是第一项的名称。