Loadrunner参数获取与传递(获取登录token,并传到请求header)

登录返回token示例:

{
    "success": true,
    "code": 200,
    "data": {
        "user": {
            "id": 137,
            "userName": "admin",
            "name": "管理员",
            "orgIdList": [54],
            "orgName": "测试一",
            "roleList": [47, 50]
        },
        "token": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJsaXMiLCJ1c2VySWQiOjEzNywibmFtZSI6Imxpc-euoeeQhuWRmCIsIm9yZ0lkIjo1NCwiZXhwIjoxNjM1NTU4MzM5fQ.iAWY5SgxqH1eNSUOliSFAkSY3NF0lslraEli3rR5GH5U3pJjikpvGgY9tb4IWvwPjKwoE8FEOmtYHNUf6zn4_sYhgmR0O5_xOSkQJqIjlA1flaEZgT39L-BUIzEdrV7NFvQVuEJjT42aZSi_5x-k7ouRAzb5JKHu7MQJ5Ey2pQQ"
    }
}

解决方法:

从登录接口截取出token值,然后添加到header中

    //    登录,获取token
    lr_start_transaction("login");

    web_custom_request("token", 
        "URL=http://**.**.**.**:8080/api/auth/jwt/token", 
        "Method=OPTIONS", 
        "Resource=0", 
        "Referer=", 
        "Snapshot=t119.inf", 
        "Mode=HTML", 
        LAST); 

    web_set_max_html_param_len("262144"); // 默认最大长度为256
    
    // 获取token解析算法:
    web_reg_save_param_ex(
        "ParamName=Authorization", // 为获取到的token设置参数名
        "LB=\"token\"\:\"", // 匹配token 值左边界
        "RB=\"",// 匹配token 值右边界
        SEARCH_FILTERS,
        "Scope=Body",//匹配范围
        "RequestUrl=*/api/auth/jwt/token*",//匹配登录接口
        LAST);
    
    web_custom_request("token_2", 
        "URL=http://**.**.**.**:8080/api/auth/jwt/token", 
        "Method=POST", 
        "Resource=0", 
        "RecContentType=application/json", 
        "Referer=http://**.**.**.**:8080/", 
        "Snapshot=t120.inf", 
        "Mode=HTML", 
        "EncType=application/json;charset=utf-8", 
        "Body={\"username\":\"admin\",\"password\":\"admin123\"}", 
        LAST);
    
    lr_end_transaction("login", LR_AUTO);

    // 将解析出的 token 自动添加在请求的头部(request header):
    web_add_auto_header("Authorization", "{Authorization}"); 

    //后续请求header自动增加了Authorization参数传递token值

    web_custom_request("menu", 
        "URL=http://**.**.**.**:8080/api/users/137/menu", 
        "Method=GET", 
        "Resource=0", 
        "Referer=", 
        "Snapshot=t121.inf", 
        "Mode=HTML", 
        LAST);

  • 24
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 28
    评论
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值