#c#
#c#
Вопрос:
Мне нужно подключиться к программному обеспечению редактора PHP Api Post Json, и мне нужно добавить заголовок для аутентификации:
- «Токен» ключ
- «Content-Type», «application / json»
У меня есть мой контент
var content = new StringContent(JsonConvert.SerializeObject(dtu, Formatting.Indented, new JsonSerializerSettings
{
NullValueHandling = NullValueHandling.Ignore
}));
ByteArrayContent(System.Text.Encoding.UTF8.GetBytes(content));
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
Затем я пытаюсь подключиться к API
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(baseurl);
client.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Token", config.readStringKey("token"));
var result = client.PostAsync(baseurl, content)
.ResultContent.ReadAsStringAsync();
}
Но мне нужно добавить вторую строку в заголовки.Значение AuthenticationHeaderValue как
Захват экрана https://imgur.com/a/UPU18sj
Как мне это сделать?
Комментарии:
1.
client.DefaultRequestHeaders.Authorization
заключается в установкеAuthorization
заголовка. Вы не делаете то же самое в Postman. В Postman вы устанавливаетеToken
заголовок.2.
client.DefaultRequestHeaders.Add("Token", config.readStringKey("token"))
Ответ №1:
Вы можете использовать заголовки запросов по умолчанию, если получатель позволяет это:
// depending on token encoding you can add 'Token' to default headers dictionary. in this case: a bearer token
client.DefaultRequestHeaders.Add("Authorization", $"Bearer {token}"));
client.DefaultRequestHeaders.Add("content-type", "application/json"));