使用HTTP WEB REQUEST从URL读取响应

我必须阅读来自http://www.subway.com/storelocator/default.aspx?zip=04416&country=USA的回复。我使用了以下代码,但未获得所有响应。 而不是它给错误页面的响应提前谢谢。

protected void Page_Load(object sender, EventArgs e) { string sUrl = "http://www.subway.com/storelocator/default.aspx?zip=04416&country=USA"; XmlDocument rssDoc = new XmlDocument(); XmlTextReader rssReader = new XmlTextReader(sUrl.ToString()); WebRequest wrGETURL; wrGETURL = WebRequest.Create(sUrl); Stream objStream; objStream = wrGETURL.GetResponse().GetResponseStream(); StreamReader objReader = new StreamReader(objStream, Encoding.UTF8); WebResponse wr = wrGETURL.GetResponse(); Stream receiveStream = wr.GetResponseStream(); StreamReader reader = new StreamReader(receiveStream, Encoding.UTF8); string content = reader.ReadToEnd(); Response.Write(content); } 

我不知道你想用XmlTextReader做什么,因为返回的内容是html而不是xml ,但设置UserAgent足以获取页面。

 HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://www.subway.com/storelocator/default.aspx?zip=04416&country=USA"); req.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)"; using (var resp = req.GetResponse()) { var html = new StreamReader(resp.GetResponseStream()).ReadToEnd(); } 
 Stream objStream; StreamReader objSR; System.Text.Encoding encode = System.Text.Encoding.GetEncoding("utf-8"); string str = "http://domaninname.com/YourPage.aspx?name=" + "abc"; HttpWebRequest wrquest = (HttpWebRequest)WebRequest.Create(str); HttpWebResponse getresponse = null; getresponse = (HttpWebResponse)wrquest.GetResponse(); objStream = getresponse.GetResponseStream(); objSR = new StreamReader(objStream, encode, true); string strResponse = objSR.ReadToEnd(); Response.Write(strResponse); 

https://codepedia.info/send-webrequest-with-parameter-in-asp-net-c/