• metersphere后置脚本提取响应头,响应体;


    一,首先观察下你的响应头,都是key:value形式的;

    二,我们需要先添加一个后置脚本,右侧默认选择的beanshell编写;
    在这里插入图片描述
    三,点击右侧的获取响应头,就能得到完整的响应头,如下我们脚本的前两行;

    // 获取响应头
    rh = prev.getResponseHeaders();
    log.info("--------------" + rh.toString());
    //将响应头拆分存入数组A
    String[] A=rh.split("\n");
    log.info(Arrays.toString(A));
    
    //创建一个哈希
    Map kv=new HashMap();
    
    for(i=1;i.length;i++)
    {
        
        log.info("第"+i+"个:"+A[i]);
        //获取单个数组值
        String v=A[i];
        String[] B=v.split(":");
        //将B数组中的内容作为键值对存储
        kv.put(B[0],B[1]);
        
        }
    //打印哈希表
    log.info(kv.toString());
    
    //获取你想要的值
    a=kv.get("X-ALIDW-VSHOP-ID");
    log.info(a);
    // 将获取的值设置为环境变量
    vars.put(${__metersphere_env_id}+"a",a);
    //获取你想要的值
    b=kv.get("X-ALIDW-SHOP-ID");
    log.info(b);
    // 将获取的值设置为环境变量
    vars.put(${__metersphere_env_id}+"b",b);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    四,将响应头设置成环境变量
    1.中间的都是在把获取的响应头格式化,后面好拿取,你只需要复制即可;
    2.最后一行是将获取的响应头设置成环境变量,便于其他接口使用,只需点击右侧的设置环境参数,然后替换变量名即可;
    3.提取多个的话你只需要重复后三行代码即可,如上我就提取了a,b两个参数并设置为环境变量;
    五,运行之后环境变量都设置上了,其他接口就可以调用了;
    在这里插入图片描述
    六,再补充一下后置脚本提取响应体的脚本
    1.先添加一个后置操作“提取参数”,然后使用jsonpath提取;
    在这里插入图片描述
    2.再添加一个后置操作“后置脚本”,点击右侧的设置环境参数,然后替换变量名,将第一步提取的参数设置成环境变量;

    vars.put(${__metersphere_env_id}+"X-ALIDW-VSHOP-ID","${X-ALIDW-VSHOP-ID}");
    
    • 1

    在这里插入图片描述
    3.运行之后,查看你的环境变量就会设置上,然后别的接口就可以调用变量了,如下;在这里插入图片描述
    如果对你有帮助,麻烦点点关注,点点赞哦;

  • 相关阅读:
    Vue - 得到组件渲染的DOM
    优化 Node.js 性能:检测内存泄漏和高 CPU 使用率
    运行程序时msvcr110.dll丢失的解决方法,msvcr110.dll丢失5的个详细解决方法
    Go编程快闪之 logrus日志库
    【leetcode】【2022/8/15】641. 设计循环双端队列
    记录keras库中导入函数找不到的问题
    二分答案裸题(加一点鸽巢原理)
    c++Flood Fill算法之池塘计数,城堡问题,山峰与山谷(acwing)
    微服务组件Sentinel (Hystrix)详细分析
    leetcode 33. 搜索旋转排序数组
  • 原文地址:https://blog.csdn.net/weixin_48636525/article/details/126866093