http应用中,前后端如何定义错误信息接口

http应用中,http server不可避免发生各种各样的错误,如数据库服务死掉、硬盘资源不够导致文件写错误。当发生错误时,应该返回怎样的信息呢?


在最近的一个项目中,对于错误信息,使用的结构是:原生的http code + 自定义code + err msg

  1. 关于http code
    对于一个成功的请求,http code: 200 + obj
    对于一个失败的请求,可能会有不同的http code:
    如果因为服务器错误导致失败,http code: 500
    如果权限不够,访问了不应访问的api http code: 403
    如果传递的参数格式不对或与要求不符,http code: 400
  2. 对于自定义code的作用,我的理解如下:
    当用户遇到错误时, 页面上的错误码提供给开发者,开发者可以因之得到更多的信息。
    后端需要根据不同的error或异常返回不同的错误码
  3. err msg
    debug/development模式下,错误详细信息会写到err msg中,发送到前端。但是在生产环境下,err msg不会发送给前端。

参考:

https://apigee.com/about/blog/technology/restful-api-design-what-about-errors

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值