作者:zhanghao320829 | 来源:互联网 | 2023-07-13 11:43
当客户端把用户名密码用Base64加密后编码,放在Authorizationheader中发送给服务器,那么就会认证成功了。解决办法就是,在Headers中添加基本认证的键值对
一、401:
1. HTTP 401 错误 - 未授权: (Unauthorized)
Web服务器认为,客户端发送的HTTP数据流正确,但需要用户验证才能访问URL资源,1 )尚未提供相关信息,或2 )已提供但许可测试未通过。 这就是广为人知的“HTTP基本验证”。 客户端提供的认证请求在HTTP协议中定义为www-认证报头字段(WWW -authenticateheaderfield )
桌面APP应用程序通常不使用COOKIE,而是将使用BASE64对“用户名冒号密码”编码的字符串放入http请求的header Authorization中发送到服务端。 这称为基本身份验证(Basic Authentication )。
2. 原因:
由于请求不包含授权读取器,因此服务器将向客户端返回401 Unauthozied,并将信息添加到响应的读取器“www-authentiv ate”。 当客户端使用Base64对用户名密码进行加密和编码,并将其放入Authorization header发送到服务器时,认证成功。
3. 场景及办法:
最近在postman上偶然遇到401个错误是在请求用户名为token的接口时,所有Body请求参数和Headers都相同,但都是错误401。 呼叫后端好久没来看哈哈了,忘了添加一个叫授权的请求Header。 解决方案是在Headers中添加基本认证的密钥-值对。 键值对如下:
授权: basicykkow9mply3jlda==(注意:这里的Base64位代码是自由编写的,可以自由查看)
3358 blog.csdn.net/u 013136708/article/details/41210897
二、403:
1. HTTP 403 Forbidden - 拒绝访问
403 Forbidden是HTTP协议的状态代码(Status Code )。 如果你无权访问这个车站,很容易理解。
此状态表示服务理解了这次请求,但拒绝执行任务,不应将其重新发送到服务。 如果HTTP请求的方法不是" HEAD ",并且服务器想知道客户端没有权限的原因,则服务器必须在返回的消息中说明拒绝原因。 如果服务不希望提供反馈信息,则服务可以使用404 Not Found代替403 Forbidden。 33558 www.Sina.com/youdon ' thavepermissiontoaccess/on this server.additionally, a 500 internalservererrorerrorwasencounteredwhiletryingtouseanerrordocumenttohandletherequest.http://www.Sina.com /日前偶然看到该报最终会导致403个误报。 解决方案:就是把http改为https。 仔细看,我认为这个错误是403.4。 403.4错误是由于请求SSL而发生的。 您必须在要显示的网页地址中使用“https”。2. 原因: