zoukankan      html  css  js  c++  java
  • (未解决)记录一次登录&jmeter,留下的一地鸡毛

      一般的登录校验过程是这样的:客户端发起请求,拿到服务器给的“令牌”,再次发起请求,服务器验证“令牌”是否正确,从而返回给客户端是登录成功还是登录失败。然后我按照这个流程,用jmeter去模拟了登录过程,如下,出了点小问题:

    这个登录请求返回了三个response,一二的http status都是302,第三个是200。我刚开始以为是开发在后台加的阿里云无痕验证影响了(因为之前的登录传个cookie就可以绕过的),然后让开发在dev环境去掉无痕验证,问题还是没解决。看到这两个302,我很忧桑,然后就一直试图去抓包理解这个登录的过程,最后得到了以下的猜测:

    这么一个过程是发生在一个request里面的。根据以上的猜测,我在线程组中加上一个cookie管理器,在模拟登录操作,如下:

    这证明模拟登录是成功了(侧面证明涉及到接口的时候,了解系统架构和业务是件多么重要的事情╮(╯▽╰)╭)。

      那么接下来还有一个问题,我接下来要做客户查询的接口压测(需要先登录),如果我按照平时的来做,只把cookie加上,然后去请求客户查询的接口,还是未登录的状态,只有在加上登录接口之后,才能跑通查询的接口,即:

    但是这样就不符合实际使用场景了,压测毫无意义,然后我就卡在这了。后面我试着转换下,用其他的东西加cookie去跑这个查询接口。不出所料,我用python requests和postman都只需要加上cookie,然后就可以调用这个查询接口了,我心中一万头神兽奔腾而过......

      最后,截止目前,我还是没处理掉这个问题,我不知道是jmeter工具本身的瑕疵问题,还是我个人理解有问题,或者我们系统登录的校验还涉及到JS层面,亦或是其他等等,反正我是给它跪了,留待后续解决了,此文记录之。

    ———为梦想灼伤了自己,也不要平庸的喘息

  • 相关阅读:
    如何使用API创建OpenStack虚拟机?
    Windows Server 2012 新特性:IPAM的配置
    DNSSec
    Win Server 8中的利器:微软在线备份服务
    AD RMS总结
    开发中辅助功能
    开发中坑爹的地方
    Js 中常用方法
    asp.net 错误处理
    js中的注意事项(持续整理)
  • 原文地址:https://www.cnblogs.com/zichuan/p/9481800.html
Copyright © 2011-2022 走看看