大家是如何处理异常状态码的?

比如用户没有登录的时候,经常有api接口会返回401对吧(用户没登录什么额),虽然没啥影响,但是在控制台看着就很烦,所以你们是怎么处理的?或者大厂是怎么处理?就是401(状态码就要有状态码的意义?),还是有什么别的方法优雅一点,手动200不错哈

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 20
随波逐流

用户又不盯着控制台 :see_no_evil:

8个月前 评论
wongvio (楼主) 8个月前

可以分不同类型的 exception

8个月前 评论
wongvio (楼主) 8个月前

公司统一就行 就怕这边200 400 500 那边100001 100002

8个月前 评论

例如 BizException ApiRuntimeException 等等 根据需要自定义 每种异常处理方式也有所不同

8个月前 评论

就状态码的 最好跟着http 状态码走 !!!

8个月前 评论

以前会分 http 状态码,业务状态码,现在一律 200 http 状态码,然后业务状态码,最终还是看你自己想用哪种。

8个月前 评论
ononl 8个月前
claystone (作者) 8个月前
sanders

HTTP 状态标准还是要遵守的,我在这方面吃过亏。其他的业务状态可以放飞自我。借用老图:

file

8个月前 评论
wongvio (楼主) 8个月前
hhhhkkk 8个月前

file

8个月前 评论
wongvio (楼主) 8个月前
ononl 8个月前

这个看各家的规范了

http status code 不变

请求状态码分客户端错误 10000 - 19999, 服务端错误 20000 - 29999 (也可以改成 40000, 50000)

{error: 10000, message: “ok”}
{error: 20000, message: “服务器错误,或详细描述”}

8个月前 评论

基本的状态码还是要有的,不如400,401,403,500,201,204,200,剩下的可以用业务代码补充,如果是单纯的前后台分离,可以一律200,由业务代码补充

这个没有什么标准,统一规范就行,不过如果是后端提供的服务,有其他应用调用,最好还是用http状态码,便于验证服务是否可用

8个月前 评论
陈先生

之前尝试过使用 http 状态码,但是前端不太喜欢,就改成了前端喜欢的样子,具体可以看下我的文章。

8个月前 评论
aab

这个一直都是争议不断的一个话题,我们采用的方案是,尽量的符合 http code,然后使用json丰富信息,HTTP 也有标准的解决方案 RFC 7807 可以参照!

{
    "reason":"NOT_FOUND",
    "message":"user not found",
    "errors":[]
}
8个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!