Я создал проект, используя код шаблона веб-API по умолчанию для ядра asp.net 5.
<TargetFramework>net5.0</TargetFramework>
Затем я добавил метод проверки почтового запроса в WeatherForecastController.
[HttpPost]
public ActionResult<string> PostMethod([FromBody]string jsonString)
{
return Ok(jsonString);
}
Если я удалю [FromBody], код работает нормально. Если я добавлю [FromBody] и наберу что-то в теле, например asdfasdf из swagger, произойдет сбой с ошибкой статуса 400
{ "тип": "https://tools.ietf.org/html/rfc7231#section-6.5.1", "title": "Произошла одна или несколько ошибок проверки.", "статус": 400, "traceId": "00-78bd11a5cea5244998ade80c059479d0-8cb569e070ca0047-00", "ошибки": { "$": [ "'a' является недопустимым началом значения. Путь: $ | LineNumber: 0 | BytePositionInLine: 0." ] } }
Не могу понять в чем дело! Может ли кто-нибудь объяснить, что вызывает это, и было бы здорово, если бы вы могли указать мне какой-нибудь ресурс, который поможет мне понять, как выполняется эта проверка. Здесь не было аннотаций данных с помощью этого простого кода.
Тело в Swagger!! :)
заранее спасибо Мурти
@Yinqiu, отредактировал сообщение, чтобы добавить изображение для тела в чванстве
Ваше тело не строкового типа, пожалуйста, добавьте ""
, измените его на
"xxxxx"
Результат испытаний:
:) Действительно Это было оно! Спасибо за решение :) :)
Рада, что смогла вам помочь :)
Привет @Murthy, какое у тебя тело в твоём чванстве? можешь поделиться?