P26 输入验证和Data Annotations
状态码4开头是的消费者引起的,5开头的是服务端的错误。在rest服务里面,错误通常是放在响应的body里面。body里面含一组错误信息。api的消费者可以把这些错误展示给客户端。
开始写代码
创建公司的请求,故意传递null值的json数据。
返回500错误
响应的body里面包含了错误信息
name属性值的要求 ,我们是在RoutingDbContext里面定义的。
这里返回的状态码是500. 5开头的表示服务器端的错误。
实际上是由于我们的消费者引起的这个错误,它传递了一个错误的属性值。所以状态应该返回 4开头的才对。
所以说我们要对传入的参数进行验证。
这个命名空间下有很多的Attribute
加上长度的限制
写完后,再测试
注意事项
当外面套一层大括号的时候
[ { "Name":null, "Introduction":null } ]
结果报这种错误
继续
加上ErrorMessage
还可以返回的更友好一点。{0}就表示当前这个属性名
{1}表示最大长度 {2}表示最小长度
结束