1使用Http状态码
ASP.NET Web Api框架提供了Http状态码的值,如下图所示。
虽然有这些预定义的状态码,但在实际项目中使用自定状态码结合预定义状态码更有优势。
通过在适当的位置抛出异常
throw new HttpResponseException
通过构造函数设置响应或Http状态,来实现向客户端返回相应的执行状态。
相应地HttpResponseMessage如下图所示:
可通过构造函数设置状态,通过HttpResponseMessage.ReasonPhrase设置原因短语,但只支持英文字符,中文或其他语言文字显示乱码。
自定义状态码的规则为:
1)必须是整数
2)必须小于999
3)600以内的码最好别用
此外消息短语不应很长,如果想更加详细的表达消息,那么也可以使用代码代替消息,但要注意代码不能是三位数字,否则客户端无法正常获得消息内容。
2 返回响应中包含错误码和消息短语
使用Web api一般返回序列化后的字符串,将错误码与消息短语也包括在序列化字符串内。但对于使用Odata协议来说,无法这样实现。