HttpClient не принимает заголовки авторизации (401 Unauthorized)? - PullRequest
0 голосов
/ 28 июня 2018

Привет! Я создаю мобильное приложение Xamarin.Forms, которое предназначено для Android с .NET Standard в качестве метода совместного использования кода. К сожалению, API, который я использую, работает в Postman, но не работает в C # с использованием HttpClient из System.Net.Http.

Запрос почтальона работает с использованием этого заголовка:

Запрос снимка экрана

Я пробовал 3 разных подхода, но они все еще возвращают «401 не авторизован». Я также проверил разрешение ИНТЕРНЕТ в моем файле манифеста Android.

HttpClient.DefaultRequestHeaders.Add("Authorization", "Token e2eeb1aa9f32eb0ekgn353b6fadb772");
HttpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Token", "e2eeb1aa9f32eb0ekgn353b6fadb772");
HttpClient.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "Token e2eeb1aa9f32eb0ekgn353b6fadb772");

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Пожалуйста, убедитесь, что ваш HTTP-запрос URL правильный или нет. Иногда вам может понадобиться завершающий обратный слеш ('/'). Если вы пропустили его в HTTP-клиенте , он не будет работать, но POSTMAN будет работать.

0 голосов
/ 28 июня 2018

Попробуйте установить заголовок на HttpRequestMessage:

request.Headers.Authorization = new 
    AuthenticationHeaderValue("Bearer","e2eeb1aa9f32eb0ekgn353b6fadb772");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...