如何区分HTTP状态码401和403

发布时间 2024-01-04 13:15:48作者: 李若盛开

401 Unauthorized
状态码401表示认证失败,表示请求没有被认证或者认证失败。
通常由web服务器返回,而不是web应用。
场景:token失效、token缺失、token伪造,导致服务端无法识别身份。
403 Forbidden
状态码403表示授权失败,通常表示用户通过了身份验证,但缺少权限对给定的资源进行访问或者操作。
通常由web应用返回。
场景:用户登录成功,但是无权进行读写操作。
总结
401和403的主要区别在于:

重点不同:401着重于认证,403着重于授权;
返回对象不同:401通常由web服务器返回,403由web应用返回;
场景不同:401表示用户未通过身份授权、验证,403表示用户可能通过了身份验证,但缺少指定权限。