对登录过程进行Fiddler抓包实现jmeter登录

通过fiddler抓包分析keyclock登录过程

1.浏览器访问业务应用,因为没有登录,返回302重定向到keyclock的登录页面,在浏览器输入账号密码进行登录

2.登录成功后,查看fiddler的抓包结果,从业务域名的请求开始看,第一条 访问业务域名请求服务,因为未登录被重定向到sso.dtos.city

3f1bbb0c3b498a98960bb8fb74a3ba73.png3 .fiddler查看下一条请求,这条请求的url是上一条请求response Header中的location

ff540b1c7efa96bf7a495d091a828160.png4.再查看下一条请求,这条请求是POST请求,请求中携带了query参数,和body请求,body请求中传入了用户名、密码请求登录 

看到查询参数的session_code\excetion\tab_id是随机生成的标识,在前面的请求返回搜索,明确这几个字段是从上一个请求的response body中返回

这个请求的结果还是302,查看response Header的location字段,location字段就是下一步要跳转的url

8af4aa6f190702ad6054b305176107c8.png可以看到携带了session信息跳转到业务域名,证明登录成功 

5.fiddler查看下一个请求,是请求业务域名的接口,接口url是上一个请求返回的location

d9660a052ee6b21906b246340d3c93c6.png该接口仍是302,继续返回location

6.继续请求访问的业务域名+locationurl49eae2cb1e102db2d692a2b8cbe6dabf.png

仍返回302,继续访问locationurl 39d54d6b5bdde6a4a154dfccec132954.png

最后访问到业务url,返回200,response body是业务信息,至此,已完全分析完keyclock的登录过程

现在在jmeter调用接口实现登录

1.线程组配置cookie管理器、http信息头默认值

2.第一个接口访问业务域名+/请求,从response Header中提取location字段,该字段是下一个请求的地址

 3.GET 调用sso域名+上一步提取的locationurl,且从response body提取session_code、execution、tab_id56d3fb3306b9525f065b68e51167cb3f.png0cd6410c144b6cc41e02215003b59557.png4.预处理部分是对提取的变量字符串进行处理,删除&字符

String code;
session_code = bsh.args[0];
code = session_code.substring(0,session_code.indexOf("&"));
execution = bsh.args[1];
res_execution= execution.substring(0,execution.indexOf("&"));
tab_id = bsh.args[2];
vars.put("session_code",code);
vars.put("execution",res_execution);
vars.put("tab_id",tab_id.substring(0,tab_id.indexOf("\"")));

5.post 调用sso域名+对应接口,url包含query参数和body参数,传入session_code、execution、tab_id和用户信息

 在结果提取locationurl

6.后面几步依次调用返回的locationurl,直到最后访问成功业务域名的数据

2f61ced3834918d686177a5e42cb6b52.png 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值