2016-03-03 81 views
0

我正在使用WebClient获取特定页面的内容。当我用下面的代码试试这个时,我得到一个语法错误,它说The remote server returned an error: (401) Unauthorized未经授权使用WebClient第

我正在本地主机上运行我的项目(使用Visual Studio 2015社区和ASP.Net)并尝试获取此页面的内容“http://admin:[email protected]/Monarch/syncconnect/sdk.aspx?command=GetStatus”。我不认为你们可以看到它,但是这基本上是所有的页面包含:

<body>ENC1:RTSP,READY,ENC2:RECORD,READY,NAME:Monarch HDX</body>

我的电脑和网页都连接到同一个路由器(如果这是有用的信息)。

我该如何解决这个错误?或者有更好的方式来获取内容?

代码

var client = new WebClient(); string downloadString = client.DownloadString("http://admin:[email protected]/Monarch/syncconnect/sdk.aspx?command=GetStatus"); loaded.Text = downloadString;

+1

这并不是说你擅自使用Web客户端。这是您的WebClient不提供正在尝试连接到的网站的正确身份验证。这就是HTTP 401响应的含义。 – mason

+0

你可以在你的浏览器中打开这个链接,也就是ad​​min:admin正确的用户/密码? – HaukurHaf

+0

@HaukurHaf是的,我可以,这就是我发现页面中有什么 –

回答

1

试试这个:

var client = new WebClient(); 
client.Credentials = new System.Net.NetworkCredential("admin", "admin", ""); 
string downloadString = client.DownloadString("http://192.168.0.100/Monarch/syncconnect/sdk.aspx?command=GetStatus"); 
loaded.Text = downloadString; 
+0

感谢!d这帮了我很多! –

0

尝试设置

webClient.UseDefaultCredentials = true; 
+0

还是同样的错误:(401个 –

相关问题