HttpWebRequest.UserAgent已设置,但不能响应
本文关键字:但不能 响应 设置 UserAgent HttpWebRequest | 更新日期: 2023-09-27 17:50:03
我正在为Windows Phone 7.1.1开发一个应用程序
我使用HttpWebRequest
获得一个网站的HTML代码问题是,它总是得到"桌面"版本的HTML代码在谷歌之后,我发现它是由UserAgent字符串
我设置HttpWebRequest
的UserAgent
但它仍然没有得到"移动"版本的HTML代码
这是我的代码
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(link, UriKind.Absolute));
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)";
request.BeginGetResponse(new AsyncCallback(ResponseReady), request);
这是ResponseReady
的代码private void ResponseReady(IAsyncResult asyncResult)
{
try
{
HttpWebRequest request = asyncResult.AsyncState as HttpWebRequest;
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asyncResult);
Stream responseStream = response.GetResponseStream();
StreamReader reader = new StreamReader(responseStream, Encoding.UTF8);
HtmlDocument htmlDocument = new HtmlDocument();
string result = reader.ReadToEnd();
blah blah blah
响应总是与根本不是UserAgent(桌面版)相同
我的问题解决了
只需使用WebViewer/WebBrowser控件来加载链接。然后使用OuterHtml获取该网站的HTML代码。很简单的。您可以将该控件的可见性设置为"崩溃",以将其隐藏在屏幕上