如何处理带有自定义消息的错误请求 web api 核心?

how to handle bad request web api core with custome message?

我也有类似的问题。 有没有更简单的方法来处理输入数据类型错误?

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

我搜索过但没有找到答案。

更新:

我从微软的例子中找到了解决方案:

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

但是 当字段在 [Required] 模型中时,在 运行 服务之前调用错误 400。有没有办法解决句柄模型的400错误?

But When field is in [Required] model, error 400 is called before running the service. Is there a way to resolve the 400 error from the handle model?

[ApiController] 属性使模型验证错误自动触发 HTTP 400 响应。

要禁用自动 400 行为,请在 Startup.ConfigureServices 中将 SuppressModelStateInvalidFilter 属性 设置为 true:

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

参考https://docs.microsoft.com/en-us/aspnet/core/web-api/?view=aspnetcore-3.1#disable-automatic-400-response