HTTP 状态码 401 与 403 的区别

发布时间: 2020-07-07 13:17:23 作者: 大象笔记

例如,在调用微信小程序后台服务接口时,如果没有带 token,应该返回 401 状态码还是 403?

容易混淆的名字

英文文档里

看上去无法直接分辨两者的差异。

区别

401,是说服务端不知道你是谁。

例如,token 失效,或者 token 缺失,甚至 token 伪造。导致服务端无法识别你的身份,这时会返回 HTTP Status Code 401。客户端此时只能重试。

403,是说虽然服务端已经知道了你是谁,但是你没有权限去访问该数据资源。

例如,你登录成功了,但是你却非要去访问其他人的隐私内容,或者你无权访问的内容。

我是一名山东烟台的开发者,联系作者