一切福田,不離方寸,從心而覓,感無不通。

webAPI 使用注解非必须参数拦截问题

使用注解可以更方便对参数进行验证,但是也会存在非必须参数如:https://aaa.com?id=1&name=&age=;或https://aaa.com?id=1&name&age的请求。这时ModelState.IsValid过滤器将会拦截请求提示"值是必需的。"或"有一个值是必需的,但请求中不存在该值。"异常。

  1. 若接口使用model接收参数,可将值类型参数改为可空类型解决此问题;如:

     
  2. 若接口不使用model接收参数,暂无没有找到解决方案;
  3. 经过调试可以使用一种笨拙的取巧方案解决:在过滤器.ModelState.IsValid==false内部对值的错误内容进行排除

 

 

from:https://blog.csdn.net/niuc321/article/details/88694793