当GET
和HttpClient
执行时,我可以明确设置Content-Type
标题值吗?在HttpClient中显式设置内容类型标题以获得操作
我意识到这打破了1.1协议,但我正在使用不符合它的API,并且需要我设置一个Content-Type
标题。
我有没有用试过这个...
using (var httpClient = new HttpClient())
{
var httpRequestMessage = new HttpRequestMessage(HttpMethod.Get, "http://example.com");
httpClient.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/x-www-form-urlencoded+v1.3");
await httpClient.SendAsync(httpRequestMessage)
}
我的TryAddWithoutValidation
后检查的DefaultRequestHeaders
加入,它似乎并没有被设置Content-Type
值。
如果我试图通过设置httpRequestMessage.Content = ...
设置httpRequestMessage(的内容类型,我得到以下错误:
Cannot send a content-body with this verb-type.
有没有办法,我可以使用显式设置Content-Type
为GET
操作的方式HttpClient?
作为一种解决办法我已经能够在此期间使用'WebClient'。 – Nagoh 2014-09-29 23:21:06
@ZenCoder。这不会设置“Content-Type”标题。只有“接受”标题。 – Nagoh 2014-09-29 23:21:54