【问题标题】:extract a value from returned json从返回的 json 中提取一个值
【发布时间】:2015-06-10 17:13:07
【问题描述】:

我从 url 返回以下 json:

{"token_type":"Bearer","expires_in":"3599","expires_on":"1433956297","not_before":"1433952397","resource":"https://outlook.office365.com/","access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6Ik1uQ19WWmNBVGZNNXBPWWlKSE1iYTlnb0VLWSIsImtpZCI6Ik1uQ19WWmNBVGZNNXBPWWlKSE1iYTlnb0VLWSJ9.eyJhdWQi????...."

我想在 ASP.NET VB 中提取access_token,但无论我尝试什么,它都会产生错误。最好的解决方案是什么?

这是我的代码:

Dim parsedObject = JObject.Parse(<json string>)
Dim docs = parsedObject("access_token")

For Each doc In docs
    Dim snippet As String = doc("access_token")
Next

label1.text = snippet

【问题讨论】:

  • 我不清楚你的例子......返回的 JSON,它是否包含对象的单个实例,还是对象的数组?
  • 换句话说,你知道只有一个“access_token”实例,或者它可能在你返回的JSON中出现多次?

标签: asp.net json vb.net json.net


【解决方案1】:

您的变量 sn-p 在循环外无法访问:您无法在循环外访问它。

调试器:在继续之前,您需要弄清楚 docs 的值和数据类型是什么。由于您已经从 docs 中引用了“access_token”的值,因此您可能无法从结果值中再次获得它。我猜它应该只给你一个字符串;很难说没有错误。

【讨论】:

    猜你喜欢
    • 2021-11-07
    • 2016-10-13
    • 2015-02-18
    • 2020-08-27
    • 2021-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-09
    相关资源
    最近更新 更多