Как разместить в restful веб API - PullRequest
0 голосов
/ 05 декабря 2018

Я пытаюсь опубликовать в своем API, который принимает данные в формате JSON

Я, однако, получаю 406 неприемлемую ошибку.

HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
var user = "demo";
var password = "demo";
var base64String = Convert.ToBase64String(Encoding.ASCII.GetBytes($"{user}:{password}"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", base64String);
string url = "https://api.fever.co.za/FTIntegration.svc/BalanceLookup";
var data = new
{
    BalanceID = "4E45D053-044E-4C7E-A2A3-0743A7237811",
    CardOrIDNumber = "8212225222075"
};
var stringContent = new StringContent(JsonConvert.SerializeObject(data), Encoding.UTF8, "application/json");


var response = await client.PostAsJsonAsync(url, stringContent );

Что может быть причиной этой ошибки?

1 Ответ

0 голосов
/ 05 декабря 2018

Я думаю, что эта проблема может быть решена с помощью этого ответа: https://stackoverflow.com/a/14252326/6996150

Ваша операция не завершилась неудачей.

Ваш бэкэнд-сервис сообщает, что тип ответа возвращаетсяне указывается в HTTP-заголовке Accept в вашем клиентском запросе.

Ref: http://en.wikipedia.org/wiki/List_of_HTTP_header_fields

  • Узнайте ответ (тип содержимого), возвращаемый службой.
  • Укажите это (тип содержимого) в заголовке запроса Accept.

http://en.wikipedia.org/wiki/HTTP_status_code -> 406

(кредиты @TheWhiteRabbit)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...