HTTP响应码403 Forbidden和401 Unauthorized对比

401 Unauthorized: 该HTTP状态码表示认证错误,它是为了认证设计的,而不是为了授权设计的。收到401响应,表示请求没有被认证—压根没有认证或者认证不正确—但是请重新认证和重试。(一般在响应头部包含一个WWW-Authenticate来描述如何认证)。通常由web服务器返回,而不是web应用。从性质上来说是临时的东西。(服务器要求客户端重试)

403 Forbidden:该HTTP状态码是关于授权方面的。从性质上来说是永久的东西,和应用的业务逻辑相关联。它比401更具体,更实际。收到403响应表示服务器完成认证过程,但是客户端请求没有权限去访问要求的资源。

总的来说,401 Unauthorized响应应该用来表示缺失或错误的认证;403 Forbidden响应应该在这之后用,当用户被认证后,但用户没有被授权在特定资源上执行操作。

HTTP状态码决策图:


参考资料

403 Forbidden vs 401 Unauthorized HTTP responses

HTTP Status Codes Decision Diagram – Infographic

推荐阅读更多精彩内容

  • 蒸汽压和芳香烃对排放非常重要! 前两次我们聊了一下蒸汽压对排放的影响,今天我们聊聊芳香烃或芳烃对排放的影响! 芳烃...
    Jasonjiangsmile阅读 39评论 6 1
  • 感受 其实接触到易仁永澄老师的个人成长理论已经有2年多的时间了,也参加过《掌控每一天》和《向组织揩油》等活动,在自...
    小小虫1226阅读 215评论 0 2
  • 抻灯 远心 “娘,娘,抻灯——” 小声得像蝙蝠翅膀的拍打 把比黑夜更黑的夜拍醒 或许早就醒了,憋尿,翻身 恐惧地对...
    远心笃行阅读 49评论 0 2
  • 管理客户拜访频率,关心“需要你”的顾客 什么是应该见面的客户?首先,将你手上的客户,依照与他们之间的关系分成5阶段...
    般若无相阅读 8评论 0 0