【Http认证方式】——Basic认证

访问请求:http://192.168.2.113:8080/geoserver/rest/workspaces时,浏览器弹出窗口需要输入用户名和密码 
这里写图片描述

,并且,如果不输入或者输入错误,浏览器返回 
这里写图片描述

可以在火狐浏览器的网络监控这里看到请求的详细信息, 
这里写图片描述

服务器会返回一个401 Unauthozied给客户端,并且在Response 的 header “WWW-Authenticate” 中添加信息。 
当我们输入正确的用户名和密码之后,服务器正确返回。可以看到这个时候的请求信息: 
这里写图片描述

这是浏览器将我们的用户名和密码进行base64编码之后,发送到服务端。



这种认证方式是Http Basic认证,流程是: 
1、浏览器发送get请求到服务器,服务器检查是否含有请求头Authorization信息,若没有则返回响应码401且加上响应头 
这里写图片描述

2、浏览器得到响应码自动弹出框让用户输入用户名和密码,浏览器将用户名和密码进行base64编码(用户名:密码),设置请求头Authorization,继续访问 
方法一:增加请求参数 
这里写图片描述

方法二:使用类Authenticator 
step1 创建类继承Authenticator 
这里写图片描述

step2 在获取网络资源之前,设置

这里写图片描述

3、浏览器得到Authorization请求头信息,验证成功。




********************自己写了个需要Basic验证的服务***************************************************************************************** 
这里写图片描述

********************************************Http的其他认证方式************************************** 
除了这种方式外,还有其他三种认证方式 
这里写图片描述

猜你喜欢

转载自www.cnblogs.com/jiangzhaowei/p/9125084.html