Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何使用VB.NET从WebAPI获取JSON数据?_Asp.net_Vb.net - Fatal编程技术网

Asp.net 如何使用VB.NET从WebAPI获取JSON数据?

Asp.net 如何使用VB.NET从WebAPI获取JSON数据?,asp.net,vb.net,Asp.net,Vb.net,我试图从WebAPI获取JSON数据,但我不知道如何使用VB.NET解决。下面的代码是我从互联网上的某篇文章粘贴而成的。 实际上,我不知道是否需要名为“Await”的命令,以及如何使用它。我遇到了来自此区域的语法错误。有人能帮我吗?? 根据API供应商的说法,当我连接到那个URL时,我显然需要在它们的头上放一个名为“token”的值。 (ASP.NET4.6/VB.NET/VisualStudio2017) 我做了这样的更改,但仍然面临两个语法错误,我调用了函数 1:Await->BC37058

我试图从WebAPI获取JSON数据,但我不知道如何使用VB.NET解决。下面的代码是我从互联网上的某篇文章粘贴而成的。 实际上,我不知道是否需要名为“Await”的命令,以及如何使用它。我遇到了来自此区域的语法错误。有人能帮我吗?? 根据API供应商的说法,当我连接到那个URL时,我显然需要在它们的头上放一个名为“token”的值。 (ASP.NET4.6/VB.NET/VisualStudio2017)

我做了这样的更改,但仍然面临两个语法错误,我调用了函数

1:Await->BC37058“Await”只能在异步方法中使用。考虑用“AsiNC”修饰符标记该方法,并将其返回类型改为“任务”。

2:应访问WebAsync->语句结束

    Dim content As String = Await AccessTheWebAsync(jsonObj("access_token"))
End Sub

Async Function AccessTheWebAsync(ByVal jsonObj As Object) As Threading.Tasks.Task
        url = "https://webapi.XXXXXXXXX.XXXXX.com/getuserno?employeeid=" & txtID.Text
        Dim str As String
        Using client = New Http.HttpClient()

            client.DefaultRequestHeaders.Add("XXX-Api-Access-Token", jsonObj("access_token"))
            client.Timeout = TimeSpan.FromSeconds(10.0)

            Dim dt As System.IO.Stream = Await client.GetStreamAsync(url) 
            Dim sr0 As New System.IO.StreamReader(dt, System.Text.Encoding.UTF8)
            str = sr0.ReadToEnd()
            dt.Close()

        End Using
End Function

语法错误是什么?你能把错误文本放在这里吗?嗨,阿迪蒂亚,我能在屏幕上看到这些字母。BC37058“wait”只能在异步方法中使用。考虑用“异步”修饰符标记该方法,并将其返回类型改为“任务”,然后将代码放入异步函数中。我真的很感激,再见。我听从了你的建议,但我是不是弄错了?你能检查一下我在上面添加的评论吗??如果你继续帮忙,我很高兴。非常感谢。
    Dim content As String = Await AccessTheWebAsync(jsonObj("access_token"))
End Sub

Async Function AccessTheWebAsync(ByVal jsonObj As Object) As Threading.Tasks.Task
        url = "https://webapi.XXXXXXXXX.XXXXX.com/getuserno?employeeid=" & txtID.Text
        Dim str As String
        Using client = New Http.HttpClient()

            client.DefaultRequestHeaders.Add("XXX-Api-Access-Token", jsonObj("access_token"))
            client.Timeout = TimeSpan.FromSeconds(10.0)

            Dim dt As System.IO.Stream = Await client.GetStreamAsync(url) 
            Dim sr0 As New System.IO.StreamReader(dt, System.Text.Encoding.UTF8)
            str = sr0.ReadToEnd()
            dt.Close()

        End Using
End Function