Я пытаюсь обновить код до HttpClient из HttpWebRequest в c #.
Я не могу аутентифицировать сторонний сервис с HttpClient и не вижу этой проблемы с почтальоном или библиотекой httpwebrequest
Я пробовал с почтальоном.
Ссылка на окно консоли почтальона:
GET / api / v2 / geocodes / a973-5a1c5d435990 Тип содержимого: приложение / json Авторизация: JWT ey -----iJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNTYzMDEwOTg4LCJqdGkiOiIwNWM3 контроль кэша: без кэша Почтальон-токен: 8d46fa25-698c-477d-агент: def-0 * * 0 -0 * 0,60 * 0,60 * 0,60 -0-0-0: http://api.concept.quincus.com/api/v2/geocodes/3d0a4758-611e-448f-a973-5a1c5d435990
рабочий код:
var httpWebRequest = (HttpWebRequest)WebRequest.Create(
quincusGeoCodeDataRequest.endpoint);
httpWebRequest.ContentType = "application/json";
httpWebRequest.Headers.Add("AUTHORIZATION", "JWT " + quincusGeoCodeDataRequest.quincusTokenData.token);
httpWebRequest.Method = "GET";
httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
string response;
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
response = streamReader.ReadToEnd();
streamReader.Close();
}
Я пытаюсь реализовать тот же код с библиотекой HttpClient
var response = string.Empty;
using (var client = new HttpClient())
{
HttpRequestMessage request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("http://sample.com/3d0a4758"),
};
request.Headers.Authorization = new AuthenticationHeaderValue("JWT","eyJ0eXAiOiJKV1QiLC");
HttpResponseMessage result = await client.SendAsync(request);
if (result.IsSuccessStatusCode)
{
response = result.StatusCode.ToString();
}
}
return response;
Всегда возвращается 401 неавторизованным.Я не знаю, в чем проблема?
Я хочу узнать, как реализовать httpclient для приведенного выше фрагмента кода httpwebrequest