Неподдерживаемый форматер медиа-типа при отправке JSON-LD - PullRequest
1 голос
/ 25 сентября 2019

Я отправляю данные JSON LD с помощью HttpClient в C # в конечную точку веб-интерфейса.Я получаю сообщение об ошибке неподдерживаемого средства форматирования носителей.Данные, которые я отправляю, представляют собой JSONLD в виде строки:

string data = @"{
                      ""@type"": ""vcx:blah"",
                      ""vcx:key"": ""blah"",
                      ""vcx:value"": ""blah""
                 } ";
httpClient.PostAsync(uri, new StringContent(data));

На стороне API это веб-API.В Global.asax.cs у меня есть следующее:

GlobalConfiguration.Configuration.Formatters.Clear();
GlobalConfiguration.Configuration.Formatters.Add(new 
JsonMediaTypeFormatter());

Даже если я удаляю очистку форматеров, я получаю ту же ошибку в вызывающем приложении.

Кто-нибудь знает решение?

1 Ответ

1 голос
/ 25 сентября 2019

См. документы

Вы используете первый конструктор StringContent, это означает, что тип носителя для StringContent создан по умолчанию text/plain

Если вам нужен jsono, укажите тип носителя:

httpClient.PostAsync(uri, new StringContent(data, Encoding.UTF8, "application/json"));
...