Tôi đang cố gắng đặt tiêu đề Content-Type
của đối tượng HttpClient
theo yêu cầu của API mà tôi đang gọi.Làm cách nào để bạn đặt tiêu đề Kiểu nội dung cho yêu cầu HttpClient?
tôi đã cố gắng thiết lập các Content-Type
như dưới đây:
using (var httpClient = new HttpClient())
{
httpClient.BaseAddress = new Uri("http://example.com/");
httpClient.DefaultRequestHeaders.Add("Accept", "application/json");
httpClient.DefaultRequestHeaders.Add("Content-Type", "application/json");
// ...
}
Nó cho phép tôi để thêm Accept
tiêu đề nhưng khi tôi cố gắng thêm Content-Type
nó ném ngoại lệ sau đây:
lạm dụng tên tiêu đề. Đảm bảo tiêu đề yêu cầu được sử dụng với
HttpRequestMessage
, tiêu đề phản hồi vớiHttpResponseMessage
và tiêu đề nội dung có các đối tượngHttpContent
.
Làm cách nào để đặt tiêu đề Content-Type
trong yêu cầu HttpClient
?
Ngoài ra, 'Response.Content.Headers' sẽ hoạt động hầu hết thời gian. –
@AshishJain Hầu hết các câu trả lời SO tôi đã thấy liên quan đến 'Response.Content.Headers' cho API Web ASP.Net chưa hoạt động, nhưng bạn có thể dễ dàng đặt nó bằng cách sử dụng' HttpContext.Current.Response.ContentType' nếu bạn cần phải. – jerhewet
@jerhewet i được sử dụng theo cách làm việc cho tôi. var content = new StringContent (dữ liệu, Encoding.UTF8, "application/json"); –