Пользовательский заголовок для запроса Httpclient
Как я могу добавить пользовательский заголовок в запрос с помощью HttpClient. Я использую метод PostAsJsonAsync для публикации json. Пользовательский заголовок, который мне нужно будет добавить, -
"X-Version: 1"
это то, что я сделал до сих пор:
using (var client = new HttpClient()) {
client.BaseAddress = new Uri("https://api.clickatell.com/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "xxxxxxxxxxxxxxxxxxxx");
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var response = client.PostAsJsonAsync("rest/message", svm).Result;
}
3 ответов:
Я нашел ответ на мой вопрос.
client.DefaultRequestHeaders.Add("X-Version","1");Это должно добавить пользовательский заголовок к вашему запросу
var request = new HttpRequestMessage { RequestUri = new Uri(EnvironmentSetup.BaseAddress + "Folder"), Method = HttpMethod.Post, Headers = { { HttpRequestHeader.Authorization.ToString(), "Basic " + EnvironmentSetup.GetAuthToken() }, { HttpRequestHeader.ContentType.ToString(), "multipart/mixed" }, }, Content = new MultipartContent { new ObjectContent<FolderWithDocuments>(new FolderWithDocuments { Status = FolderStatus.Draft, Users = new List<User> { EnvironmentSetup.User1, EnvironmentSetup.User2 }, }, new JsonMediaTypeFormatter(), "application/json"), new ByteArrayContent(ResourceHelper.ReadResourceToByteArray("blank.pdf")) { Headers = { { "Content-Type", "application/Executable" }, { "Content-Disposition", "form-data; filename=\"test.pdf\"" }, }, }, }, };
есть
Headersсобственность вHttpRequestMessageкласса. Вы можете добавить туда пользовательские заголовки, которые будут отправляться с каждым HTTP-запросом. ЭлементDefaultRequestHeadersнаHttpClientкласс, с другой стороны, устанавливает заголовки для отправки с каждым запросом, отправленным с использованием этого объекта клиента, следовательно, имя по умолчанию Заголовки Запроса.надеюсь, что это делает вещи более ясными, по крайней мере для тех, кто видит этот ответ в будущем.
Comments