• 编写一个登录接口测试脚本过程中遇到的坑


    在页面上抓包,该登录接口有如下参数:

    第一个坑:

    https请求需要加verify=False

    requests.post(url,data,verify=False)

    第二个坑:

    没注意传参格式,用json传参请求接口,接口返回原始登录页面,为啥传参格式不对接口没报错呢,因为该接口没有接收到参数时也可调通。。。

    实际接口要求参数格式为x-www-form-urlencoded

    第三个坑:

    传参格式正确之后,postman调用接口一直no-response,python代码调用一直返回服务器积极拒绝,怀疑是传的参数的内容有问题

    经过多次抓包分析,发现传参的lt和execution字段是在实时变化的,抓包发现网页上登录时,浏览器在请求登录接口前,调用了一次get登陆页面,调用接口返回的是登陆页面的html,里面就可以解析出lt参数和execution参数

    第四个坑:

    取出lt参数和execution参数后,调用登录接口还是返回服务器积极拒绝

    通过一通搜索+请教同事,发现调用get登陆页面获取参数和调用登录接口这两步操作,需要进行session保持,

    实例化一个requests.session()对象,使用该对象的get和post方法来调用接口即可

    实例如下:

     至此,才终于调通了这个破登录接口!!!

  • 相关阅读:
    使用git笔记
    linux 进程管理的一些命令使用
    [zz]XML DOM 教程
    [zz]std::string 和 c 的字符串
    [zz]grep 命令的使用
    [zz]XercesC++ 参考
    [zz]Windows WordPress本地安装教程
    今天调出来的关于cello的bug
    shell 编程的一些问题
    关于java中边界值校验的问题
  • 原文地址:https://www.cnblogs.com/luoyc/p/11306901.html
Copyright © 2020-2023  润新知