使用Net.WebClient调用URL时,“401 Unauthorized”

时间:2014-11-27 17:03:34

标签: vb.net url authentication webclient

在我的应用中,我打电话给API。

我首先构建网址...

Dim url As String = "http://" & Home.sn_username & ":" & Home.sn_password & "@" & Home.sn_ip & "/command.htm?number=" & phonenumber
url = Replace(url, Chr(13), "")

我想确保其尝试调用的网址是正确的,因此我已将其转发到控制台...

Console.WriteLine("DIALING: " & url)

网址是开启的,所以最后我用Net.Webclient调用网址...

Dim client As New Net.WebClient
client.DownloadString(url)

这不起作用。 抛出异常,我收到401 Unauthorized错误。

我做错了吗? 最终的URL是这样的:

http://username:passwrd@domainame.com/command.htm?Number=01611234565

如果我把它直接粘贴到我的浏览器中就可以了! (它用于IP电话API ......我的桌面电话拨号!)。

我是否需要查看提供凭据的其他方式?

提前致谢!

1 个答案:

答案 0 :(得分:0)

尝试将您的身份验证凭据直接添加到WebClient,而不是在执行前将其添加到URL之前。

client.Credentials = new NetworkCredential(Home.sn_username, Home.sn_password)