HTTP 状态码 401 与 403 的区别

更新日期: 2020-07-07 阅读次数: 6873 字数: 152 分类: 微信小程序

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

容易混淆的名字

英文文档里

  • 401 Unauthorized
  • 403 Forbidden

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

区别

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

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

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

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

关于作者 🌱

我是来自山东烟台的一名开发者,有敢兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式