是否可以使用GetAsync(),PostAsync(),PutAsync(),DeleteAsync()方法设置标头值?

时间:2019-04-15 03:15:24

标签: c# asp.net-web-api http-headers

我正在使用别人开发的代码,发现了这行

HttpResponseMessage response = await Client.PostAsJsonAsync($"User", user);

来自System.Net.Http.HttpClientExtensions

代码还使用许多类似的方法,例如:

Task<HttpResponseMessage> GetAsync(string requestUri);
Task<HttpResponseMessage> PostAsync(string requestUri, HttpContent content);
Task<HttpResponseMessage> PutAsync(string requestUri, HttpContent content);
Task<HttpResponseMessage> DeleteAsync(string requestUri);

来自System.Net.Http.HttpClient

但是我还需要在标头中发送值(用于版本控制),所以我修改了GetAsync,

HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get, $"User/{name}");
request.Headers.Add("ContenT-Type", "application/json;v=2.0");
HttpResponseMessage response = await Client.SendAsync(request);

我不知道这是否正确。是否可以通过设置标头来继续使用get,post,update,postAsJson进行工作,或者我被迫使用此通用发送版本?

0 个答案:

没有答案