Ami*_*mit 4 c# webclient webclient-download
我正在尝试使用查询某些URL WebClient.
我有一个集合,我循环来获取QueryString值,并构建最终的URL,然后将其传递给客户端.
它第一次执行得很好,我得到了适当的响应,然而,当它第二次进入循环时,我得到错误:
System.Net.WebException - >远程服务器返回错误:(403)Forbidden.
如果我第一次得到回复.然后我也应该得到其余的收藏品.
有什么线索的原因?我可能会缺少什么?
以下是我正在使用的代码段.
using(System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\sample.text")) {
foreach(var f in fileCollections) {
strFinalURL = string.Empty;
strFinalURL = "someURL" + f; // f can be considered as querystring param value
try {
using(var client = new WebClient()) {
test = client.DownloadString(strFinalURL);
if (!test.Contains("somecondition")) {
file.WriteLine("");
}
}
} catch (System.Exception ex) {
Console.WriteLine(ex.Message);
}
}
}
Run Code Online (Sandbox Code Playgroud)
Tas*_* K. 15
某些Web服务器可以根据它们提供的用户代理字符串来阻止请求.在您的情况下,您将空字符串作为用户代理发送.尝试添加浏览器的用户代理,任何浏览器都可以.
例如:
client.Headers.Add("user-agent", " Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0");
Run Code Online (Sandbox Code Playgroud)
有关用户代理的列表,您可以单击此处.
| 归档时间: |
|
| 查看次数: |
11607 次 |
| 最近记录: |