Ошибка аутентификации при использовании токена с c # httpclient - PullRequest
0 голосов
/ 17 ноября 2018

У меня есть HttpClient, который я использую для использования REST API. Однако у меня возникают проблемы при настройке заголовка авторизации. Мне нужно установить заголовок для токена, который я получил от метода входа, но когда я использую его в другом методе, я получаю ошибку аутентификации.

var invoiceObj = new InvoiceUploadObj { dataFile = file, credential = "", domain = "" };
var invoiceObjSerialized = JsonConvert.SerializeObject(invoiceObj);
var data = new StringContent(invoiceObjSerialized, Encoding.UTF8, "application/json");

HttpClient clientDemoWS = new HttpClient();
clientDemoWS.BaseAddress = new Uri("https://www.nameservice.com");
clientDemoWS.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
clientDemoWS.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Authorization", String.Format("Bearer {0}", bearer_token));

HttpResponseMessage responseUpload = clientDemoWS.PostAsync("/services/invoice/upload", data).Result;

Код состояния - 200, но когда я десериализирую ответ сервера, я получаю ошибку аутентификации в качестве описания ошибки.

Проверка с помощью Fiddler Я вижу, что это заголовок:

POST /services/invoice/upload HTTP/1.1
Accept: application/json
Authorization: Bearer eyJ0eXAi......
Content-Type: application/json; charset=utf-8
Host: www.nameservice.com
Content-Length: 4623
Expect: 100-continue

Где я не прав?

...