5

我正在使用 .Net 4 和 VS express 2010。

我可以发出我的帖子请求,但我不能设置一些标题。下面的代码工作正常

WebRequest Request = Request.Create("http://example.com") as HttpWebRequest;
Request.Method = "POST";
Request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
Request.Headers.Set("Accept-Encoding", "gzip,  deflate");

问题是我无法设置其他标题,如“Accept”、“UserAgent”、“Referer”、“Connection”

我尝试了以下方法但失败了

Request.Accept = "*/*";
Request.Headers.Set("Accept", "*/*");

对于第一行,Accept 属性不存在,而对于第二行,标题需要使用适当的方法或属性进行编辑。

我是一个菜鸟,我在 google 和 stackoverflow 上搜索过。如果您不知道如何解决它,请指出解决此问题的任何方向,例如重新安装某些东西,将不胜感激。

4

1 回答 1

7

Accept不作为属性存在于 上WebRequest,但它确实存在于 上HttpWebRequest

HttpWebRequest request = (HttpWebRequest) Request.Create("http://example.com");
request.Accept = "*/*";

即使您以前使用过as HttpWebRequest(我强烈建议您改用强制转换),但您的变量被声明为 type WebRequest,这就是它无法编译的原因。

于 2012-10-19T06:24:13.830 回答