这个需求应该比较正常吧,网上也有,但是方案比较复杂,还不一定适用(高版本IE,64位等)
其实MS早替我们实现了,可能大家平时不太注意
WebBrowser.Navigate 方法 (Uri, String, Byte[], String)
public void Navigate(
Uri url,
string targetFrameName,
byte[] postData,
string additionalHeaders
)
参数
-
url
-
类型:
System.Uri
一个 Uri,表示要加载的文档的 URL。
-
targetFrameName
-
类型:
System.String
要在其中加载文档的框架的名称。
-
postData
-
类型:
System.Byte
[]
HTTP POST 数据,例如窗体数据。
-
additionalHeaders
-
类型:
System.String
要添加到默认标头中的 HTTP 标头。 -
如何使用呢:
this.webBrowser1.Navigate(" www.baidu.com", null, null, @"Content-Type: application/x-www-form-urlencoded"+System.Environment.NewLine+"Referer: http://foo.com\r\n");
用fiddler跟踪下,马上可以看到效果,自定义标头生效了。