我正在尝试打开与httpwebrequest的adfoc.us/504....9链接。 但它没有给我任何HTML代码。
try
{
req = WebRequest.Create(txtLink.Text);
WebProxy wp = new WebProxy(proxies[0]);
//req.Proxy = wp;
WebResponse wr = req.GetResponse();
StreamReader sr = new StreamReader(wr.GetResponseStream());
string content = sr.ReadToEnd();
MessageBox.Show(content);
sr.Close();
}
catch (UriFormatException)
{
MessageBox.Show("URL should be in this format:\nhttp://www.google.com");
return;
}
如果我使用像[google.com] [1]这样的网站 - 我会使用google html源码获取mbox。
如果我使用adfoc.us/50....
链接,我会得到一个空字符串。
哪里可能是问题? 谢谢。
编辑:我通过安装GeckoFx组件解决了这个问题。
答案 0 :(得分:0)
这只是猜测。
如果您可以在浏览器中打开链接而不是从代码中打开链接,则可能意味着adfoc.us会阻止您,因为它无法找到useragent标头。尝试添加浏览器使用的useragent标头。
答案 1 :(得分:0)
试试这个
var req = (System.Net.HttpWebRequest) System.Net.WebRequest.Create("");
req.AllowAutoRedirect = true;
您可以手动设置MaximumAutomaticRedirections
答案 2 :(得分:0)
初始化WebRequest
时,请添加以下内容:
req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
好像它不喜欢默认标头。我从Firefox请求标题中获得了上述内容。