在ASP.net C#中伪造浏览器请求
发布时间:2020-12-16 00:07:22 所属栏目:asp.Net 来源:网络整理
导读:我正在使用下面的代码来拉取我们的第三方开发页面之一,因此我可以将其解析为XML以用于我的随机工作. 我们有兴趣在服务器上设置浏览器检测级别,只允许某些浏览器访问该站点;所以问题是我如何伪造它以便服务器认为它是浏览器请求? static string GetHtmlPage(
我正在使用下面的代码来拉取我们的第三方开发页面之一,因此我可以将其解析为XML以用于我的随机工作.
我们有兴趣在服务器上设置浏览器检测级别,只允许某些浏览器访问该站点;所以问题是我如何伪造它以便服务器认为它是浏览器请求? static string GetHtmlPage(string strURL) { String strResult; System.Net.WebResponse objResponse; System.Net.WebRequest objRequest = System.Net.HttpWebRequest.Create(strURL); objResponse = objRequest.GetResponse(); using (System.IO.StreamReader sr = new System.IO.StreamReader(objResponse.GetResponseStream())) { strResult = sr.ReadToEnd(); sr.Close(); } return strResult; } 解决方法
浏览器检测基于对服务器的请求中的标头来完成.您需要做的就是设置标题.但是,使用HttpWebRequest时,不要通过headers集合设置它,而是使用.UserAgent属性.
... System.Net.WebRequest objRequest = System.Net.HttpWebRequest.Create(strURL); //Pretend to be IE7 ((System.Net.HttpWebRequest)objRequest).UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"; objResponse = objRequest.GetResponse(); ... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 如何拥有网页的默认标题?
- ASP.Net MVC4 WebApi代理
- asp.net mvc 中使用async/await异步编程
- ASP.NET MVC ViewModel模式
- ASP.NET MVC 3可以在ASP.NET 3.5网站中运行吗?
- C#、Python中分别是怎么实现通过字符串获取实体类的值以及给
- 如何使用asp.net WebMethod处理FormData AJAX帖子(带有附加
- asp.net-mvc – 自定义网站的Orchard
- asp.net-mvc – HttpContext.Items与ASP.NET MVC
- asp.net-mvc-3 – 带区域的MVC – Html.ActionLink返回错误