Содержимое строки ASP.NET Core 3.0 [FromBody] возвращает «Значение JSON не может быть преобразовано в System.String». - PullRequest
0 голосов
/ 29 сентября 2019

Использование [FromBody] строкового содержимого в ApiController в ASP.NET Core 3.0 возвращает ошибку проверки:

{"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
 "title":"One or more validation errors occurred.",
 "status":400,
 "traceId":"|9dd96d96-4e64bafba4ba0245.",
 "errors":{"$":["The JSON value could not be converted to System.String. Path: $ | LineNumber: 0 | BytePositionInLine: 1."]}}

, когда клиент публикует данные с типом содержимого: application/json

Как получить необработанные данные json в виде строки в моем контроллере API в .NET Core 3.0?Без клиента, чтобы обновить его тип контента?

Ответы [ 2 ]

0 голосов
/ 29 сентября 2019

Вам необходимо преобразовать объект Json в строку и затем отправить его на сервер.Например, JSON.stringify (jsonObj).

0 голосов
/ 29 сентября 2019

Не уверен, что это поможет, но я думаю, что они внесли некоторые изменения в пакет .tons core 3.0 Newtonsoft.JSON, так что вы можете попробовать

Установить Microsoft.AspNetCore.Mvc.NewtonsoftJson пакет.

При запуске.cs add

services.AddControllers().AddNewtonsoftJson();

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