cuclife.com > IT > C# > 0

c#必须使用适当的属性或方法修改此标头解决办法

网络整理 - 06-27

本文描述c#中出现"必须使用适当的属性或方法修改此标头"错误的原因和解决办法。

在c#中使用httpwebrequest,webrequest类的时候,如果尝试对http请求的header进行设置,不管是使用set方法还是add方法,如我们设置header中的referer属性:

request.Headers.Set("Referer", "itjsxx.com"); request.Headers.Add("Referer", "itjsxx.com");

都会报错:"必须使用适当的属性或方法修改此标头"。

原因:c#不允许您使用set和add方法来设置此类标头

c#已经提供了此类标头的专用属性,供您修改和设置此标头时使用。

header的名称和对应的属性设置方法如下:

Header 设置方

Accept 由 Accept 属性设置。

Connection 由 Connection 属性和 KeepAlive 属性设置。

Content-Length 由 ContentLength 属性设置。

Content-Type 由 ContentType 属性设置。

Expect 由 Expect 属性设置。

Date 由 Date 属性设置。

宿主 由 Host 属性设置。

If-Modified-Since 由 IfModifiedSince 属性设置。

范围 由 AddRange 方法设置。

Referer 由 Referer 属性设置。

Transfer-Encoding 由 TransferEncoding 属性设置(SendChunked 属性必须为 true)。

User-Agent 由 UserAgent 属性设置。

根据上表所示,我们修改Referer,只需要

request.Referer = "itjsxx.com";

c#必须使用适当的属性或方法修改此标头解决办法