我想得到 HTML 输出
但我总是得到
HTTPWEBRESPONSE 远程服务器返回一个错误:(403) Forbidden
我正在使用 HttpWebResponse
protected string GetHtmlStringA(string url)
{
string sHtml = "";
HttpWebRequest request;
HttpWebResponse response = null;
Stream stream = null;
request = (HttpWebRequest)WebRequest.Create(url);
response = (HttpWebResponse)request.GetResponse();
stream = response.GetResponseStream();
StreamReader sr = new StreamReader(stream, System.Text.Encoding.Default);
sHtml = sr.ReadToEnd();
if (stream != null) stream.Close();
if (response != null) response.Close();
return sHtml;
}
我也尝试使用 UserAgent,但它是一样的
req.request=
"Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13";
我在论坛或互联网上找不到任何解决方案
请您参考如下方法:
看来您还需要发送一个Accept header 。发送带有以下 header 的请求将有效:
request.UserAgent = "Foo";
request.Accept = "*/*";
