是否可以在C#中使用HttpWebRequest与浏览器进行完全相同的POST?没有页面能够检测到它实际上没有浏览器吗?
如果是这样,我可以阅读更多内容吗?
答案 0 :(得分:2)
下载并熟悉Fiddler等工具。它允许您检查从应用程序(如普通浏览器)发出的Web请求,并确切地查看正在发送的内容。然后,您可以模拟使用C#创建的请求发送的数据,为标题,cookie等提供值。
答案 1 :(得分:1)
我认为这是可行的。
浏览器检测基于请求中的标头完成。您需要做的就是设置标题。在HttpWebRequest中,我们不需要设置头集合,而是设置.UserAgent属性。
例如:
.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)";
用户代理有很多。查看this链接以获取用户代理的完整列表
有用的链接:
How to create a simple proxy in C#?
Is WebRequest The Right C# Tool For Interacting With Websites?
http://codehelp.smartdev.eu/2009/05/08/improve-webclient-by-adding-useragent-and-cookies-to-your-requests/