错误码规范
概述
统一规范的错误码有利于团队快速对错误原因达成一致认知,能够尽快知晓错误来源、判断出问题根因,以实现快速溯源、简化沟通、快速解决问题的目的。
设计原则
- 错误码的制定原则:快速溯源、沟通标准化
- 错误码不体现版本号和错误等级信息。错误码以不断追加的方式进行兼容。错误等级由日志和错误码本身的释义来决定
- 错误码来源于当前系统,往往是业务逻辑出错,或程序健壮性等问题;框架提供三种类型错误码:E代表错误;W代表警告;N代表提醒
- 错误码使用者避免随意定义新的错误码。尽可能在原有错误码附表中找到语义相同或者相近的错误码在代码中使用即可
- 错误码不能直接输出给用户作为提示信息使用
- 系统级错误码的编号与 HTTP 状态码没有任何关系
快速上手
HTTP
状态码参考org.springframework.http.HttpStatus
接口调用成功时http状态码统一为200,code统一返回0。返回格式参考盘古2.0错误码参考
错误码列表
业务系统需要返回错误码的时候,http状态码为200,code按照错误码规范返回。
盘古为业务系统预留了4000-6000范围段内的错误码用于错误提醒。不同的编码展示的时候会对应前端不同颜色提示框。 成功为绿色,错误为红色,警告为黄色,提醒为蓝色。
错误码列表
第一类-错误类型,错误来源于当前系统,用于错误问题反馈。例如:
错误码 | 中文描述 | 说明 |
---|---|---|
E4001 | 用户请求参数错误 | 当前系统校验错误 |
第二类-警告类型,错误来源于当前系统,用于问题警告。例如:
错误码 | 中文描述 | 说明 |
---|---|---|
W4001 | 服务执行异常 | 当前系统异常警告 |
第三类-提醒类型,错误来源于当前系统,用于业务提醒.例如:
错误码 | 中文描述 | 说明 |
---|---|---|
N4001 | 当前可以执行下一步操作 | 当前系统提醒 |
注意事项
- 上述列出的编码为盘古开发平台预留编码,业务系统可参考预留范围自定义4000-6000范围内的编码,异常处理具体使用方法请参考异常处理