之前我们已经详细介绍了403HTTP错误代码。那么401(未经授权)和403(禁止)状态代码之间到底有什么区别?他们是同一回事吗?让我们仔细看看!
RFC标准
401(未经授权)的最新RFC标准是RFC 7235:401(未经授权)状态码表示该请求尚未应用,因为它缺少针对目标资源的有效身份验证凭据...用户代理可以使用新的或替换的Authorization标头字段重复该请求。
403(禁止)是RFC 7231中最新定义的:403(禁止)状态码表示服务器理解了请求但拒绝对其进行授权...如果请求中提供了身份验证凭据,则服务器认为它们不足以授予访问权限。
明显原因
如前一篇文章所述,403错误可能是已登录的情况,但是用户没有足够的特权来访问请求的资源。例如,一般用户可能正在尝试加载“管理员”路由。另一方面,遇到401错误最明显的是你根本没有登录或提供了错误的密码。这是两个最常见的错误原因。
不太明显的原因
在某些情况下,它并不是那么的简单。由于限制并不完全取决于登录用户的凭据,因此可能会发生403错误。例如,服务器可能已锁定特定资源以仅允许来自预定义IP地址范围的访问,或者可能利用了地理阻止。VPN可以绕过后者进行访问。
即使用户输入正确的凭据,也会发生401错误。这种情况很少见,但是如果授权标头格式错误,它将返回401。例如,你可能要包含一个JWT(JSON Web令牌)在请求标头中,其格式为Authorization: Bearer
eyJhbGci......yJV_adQssw5c。如果你在JWT之前忘记了“承载者”一词,则会遇到401错误。在使用Postman测试正在开发的API时,我自己遇到了这个问题,却忘记了auth标头的正确语法!
机器人学习中的经典问题之一便是分拣:在一堆无序摆放的物品堆中,取出目标物品...
微信更新了,这一次让用户可以发送大文件了,不过所谓的大大文件也限制在了200M...
相信大家的手机上都有很多APP,那么有哪些是你一直都舍不得卸载的呢? 今天我就给...
不久前,微信终于支持修改微信号了,不过一年仅限一次,而且必须满足一定的条件...
我们知道,使用 Android 10 系统用户可以轻松地以二维码的形式分享 WiFi 密码,...
当前, 5G已进入商用阶段,全球均采用国际标准组织3GPP制定的5G第一版本国际标准...
今天我们来谈谈移动测试的测试策略与测试架构。 首先我们将移动应用的范围限定在...
5G网络相比4G有哪些提升 5G基站信号辐射到底有多大 随着5G时代到来 一系列新问题...
TL; DR 构建良好的机器学习应用程序就像制作米其林式菜肴。 拥有一个井井有条的...
AI 在体育界有多不靠谱? 上个月,在苏格兰足球冠军联赛的赛场上,AI 摄像机将裁...