как справиться с плохим запросом ядра web api с обычным сообщением? - PullRequest
0 голосов
/ 31 марта 2020

У меня похожая проблема. Есть ли более простой способ обработки ошибок типа входных данных?

https://coderethinked.com/customizing-automatic-http-400-error-response-in-asp-net-core-web-apis/

Я искал, но не нашел ответа.

Обновление:

Я нашел решение на примере Microsoft:

 return BadRequest (new {message = "Something went wrong"});

Но Когда поле в [Обязательное] модель, перед запуском вызывается ошибка 400 сервис. Есть ли способ устранить ошибку 400 из модели дескриптора?

1 Ответ

1 голос
/ 01 апреля 2020

Но Когда поле находится в модели [Обязательный], перед запуском службы вызывается ошибка 400. Есть ли способ устранить ошибку 400 из модели дескриптора?

Атрибут [ApiController] заставляет ошибки проверки модели автоматически инициировать ответ HTTP 400.

Чтобы отключить автомат * Поведение 1017 * 400, установите для свойства SuppressModelStateInvalidFilter значение true в Startup.ConfigureServices:

services.Configure<ApiBehaviorOptions>(options =>
{
      options.SuppressModelStateInvalidFilter = true;
});

См. https://docs.microsoft.com/en-us/aspnet/core/web-api/?view=aspnetcore-3.1#disable -automati c -400-response

...