我希望得到HTML输出
但我总是得到
HTTPWEBRESPONSE远程服务器返回错误:(403)禁止
我正在使用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;
}
Run Code Online (Sandbox Code Playgroud)
我也尝试使用UserAgent,但它是一样的
req.request=
"Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13";
Run Code Online (Sandbox Code Playgroud)
我在论坛或互联网上找不到任何解决方案
看来你还需要发送Accept标题.使用以下标头发送请求将起作用:
request.UserAgent = "Foo";
request.Accept = "*/*";
Run Code Online (Sandbox Code Playgroud)