一:访问原理简单描述
浏览器访问服务器资源的原理
通过代理方式访问服务器资源的原理
访问效果:
1、非强制模式-->添加例外-->强制访问-->勉强录制,但效果不好
2、强制模式(HSTS)-->无法添加例外,无法强制访问
解决办法:
在浏览器中导入Jmeter生成的证书
二、Jmeter 录制
以上是原理简单描述,以下讲述是Jmeter的录制,相信网上都有很多教程教大家如何录制https请求,但通常情况下,通过不同的浏览器录制,会得到不同的结果,这是本人的个人实践经验。
1)Jmeter录制设置
在Jmeter中添加线程组及HTTP代理服务器,并设置端口及目标控制器,添加完成后,点击启动,提示Jmeter随机生成的代理证书信息,该证书有效期7天,点击确定后开始录制
2)录制Chrome浏览器请求的脚本
首先设置本地代理地址127.0.0.1(或者localhost),端口与Jmeter设置的端口保持一致,否则会录制失败
接下来打开Chrome设置,找到管理证书项,导入Jmeter生成的证书,在证书界面可查看导入的证书
输入一个https的网址,会出现提示“您的连接不是私密连接”,点击继续访问
虽然访问成功,有的样式也加载出来,但没有加载登录入口,这种方式其实比较差,因为如果要做测试,是需要登录并测试业务的,单单访问首页没什么用处。
至此,可知,Jmeter如果通过Chrome录制请求,是失败的,原因判断,浏览器未真正信用导入的Jmeter证书,所以我强烈建议下面的方式录制。
2)录制FireFox请求的脚本
首先,在FireFox中设置代理地址及端口
导入Jmeter生成的证书,确定
重点!!!!!以下3个选项一定要勾上(Chrome是没有这3个选项的)并点击确定
查看导入的证书
打开一个https的网站
看到上述界面,证明网站能访问成功,并且没有报不安全的错误,再来看看脚本,随机看了一个请求,的确是https
下面我们试一下这个网站的登录,登录界面可打开,进一步证明代理服务器能正常使用
登录成功
接下来看看脚本,已获取到对应的登录cookie,接下来自己整理一下请求,便可以通过cookie方式进行登录
以上是本人实践总结出来的,如有错误请及时提出,我会及时修改,如需转载,请注明出处。
领取专属 10元无门槛券
私享最新 技术干货