通常在客户端请求的负载与API期望的不一致时,ASP.NET Core Web API会发送400 Bad Request错误响应。要解决此问题,可以进行以下调试和排除步骤:
代码示例:
//检查ModelState是否合法 if (!ModelState.IsValid) { return BadRequest(ModelState); }
//使用ModelState.AddModelError添加错误信息 if(request.UserName==null){ ModelState.AddModelError("UserName","Username is required"); return BadRequest(ModelState); }
//全局异常过滤器
services.AddControllers(option=>{
option.Filters.Add
public class CustomExceptionFilter:ExceptionFilterAttribute{ public override void OnException(ExceptionContext context){ context.Result = new BadRequestObjectResult(context.Exception.Message); } }