【问题标题】:Get Json value with Hierarchies and Put on in a Variable使用层次结构获取 Json 值并放入变量中
【发布时间】:2018-05-24 12:48:46
【问题描述】:

我正在尝试使用 Youtube API 从频道获取订阅者数量。但是这个api在达到值之前包含一些层次结构,使用我知道的代码最多只能达到2个级别。如何获取此值并将其放入变量中,然后将其放入标签中,我的代码不起作用。

注意:我正在使用 Newtonsoft.Json

API 链接

https://www.googleapis.com/youtube/v3/channels?part=statistics&id=UCuxfOdbKQy0tgGXcm9sjHiw&fields=items(statistics(subscriberCount))&key=AIzaSyA1n4M-fo2Y5NHUj0RsvXEAis3H6_lIjRg

Json

{
 "items": [
  {
   "statistics": {
    "subscriberCount": "7484439"
   }
  }
 ]
}

代码

    Dim ChannelID As String = "UCuxfOdbKQy0tgGXcm9sjHiw"
    Dim Subs As String

    Dim json = New IO.StreamReader(DirectCast(DirectCast(Net.WebRequest.Create("https://www.googleapis.com/youtube/v3/channels?part=statistics&id=" & ChannelID & "&fields=items(statistics(subscriberCount))&key=AIzaSyA1n4M-fo2Y5NHUj0RsvXEAis3H6_lIjRg"), Net.HttpWebRequest).GetResponse, Net.HttpWebResponse).GetResponseStream)
    Dim rq As Newtonsoft.Json.Linq.JToken = Newtonsoft.Json.Linq.JObject.Parse(json.ReadToEnd)

    Subs = $"{rq.SelectToken("items")("statistics")("subscriberCount")}"

    Label1.Text = Subs

【问题讨论】:

标签: json vb.net youtube-api label


【解决方案1】:

这个

Subs = $"{rq.SelectToken("items")("statistics")("subscriberCount")}"

应该是

Subs = $"{rq.SelectToken("items")(0)("statistics")("subscriberCount")}"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-29
    • 1970-01-01
    相关资源
    最近更新 更多