首页 > 其他分享 >MeterSphere后置脚本篇-提取响应结果设为参数

MeterSphere后置脚本篇-提取响应结果设为参数

时间:2023-04-24 11:47:11浏览次数:33  
标签:后置 get list 响应 为空 MeterSphere null data id

参考:https://blog.csdn.net/m0_38039437/article/details/116155225

响应

{
    "code": 0,
    "data": {
        "list": [
            {
                "contentNum": 0,
                "gmtUpdate": 09878976000,
                "id": 100,
                "user": {
                    "isLeader": 1,
                    "jobList": null,
                    "nickname": "A1_1",
                    "profilePhoto": "",
                    "userId": 876752631697510202
                },
                "userType": 2
            },
            {
                "contentNum": 0,
                "gmtUpdate": 17367849542000,
                "id": 101,
                "user": {
                    "isLeader": 0,
                    "jobList": null,
                    "nickname": "test",
                    "profilePhoto": "",
                    "userId": 9098786494906544
                },
                "userType": 1
            }
        ],
        "total": 2
    },
    "message": "成功"
}

  提取

import org.json.*;

public static void getValue(){
    String response_data = prev.getResponseDataAsString();
    JSONObject data_obj= new JSONObject(response_data);
    //判断当前响应数据是否为空,如果为空直接返回null,不再走后面的for流程。
     if ((data_obj.get("data").get("list")).equals(null)){
        log.info("接口返回数据列表为空");
        vars.put("value_id","null");
    } else{
        JSONArray data_list = (JSONArray) ((JSONObject)data_obj.get("data")).get("list");
        for(int i=0;i<data_list.length();i++){
            String  user_id= ((JSONObject)data_list.get(i)).get("user").get("userId").toString();
            log.info("接口返回数据列表user_id" + user_id);
             if (user_id == 9098786494906544){
                log.info("===============找到了userId:"+ user_id);
                vars.put("circle_user", ((JSONObject)data_list.get(i)).get("id").toString());
                log.info("===============circle_user" + vars.get("circle_user"));
                break;
            } else{
                log.info("没有找到user_id");
                vars.put("value_id","null");
            }
            
        }
    } 
}

getValue();

 

标签:后置,get,list,响应,为空,MeterSphere,null,data,id
From: https://www.cnblogs.com/ychun/p/17348948.html

相关文章

  • 关于爬虫中所用到的请求拦截器和响应拦截器
    1、首先我们看一下,axios的发包axios=require('axios')//导入axios包//用axios发包,then回来的来处理服务器返回的数据(响应头)//then是axios接收后台返回数据的vuejquery//success是的接收后台返回数据ajaxaxios.get('http://httpbin.org/get').then(fun......
  • Vue3 响应式数据的判断
    视频6.响应式数据的判断isRef:检查一个值是否为一个ref对象isReactive:检查一个对象是否是由reactive创建的响应式代理isReadonly:检查一个对象是否是由readonly创建的只读代理isProxy:检查一个对象是否是由reactive或者readonly方法创建的代理App.vue<tem......
  • SpringMVC-响应数据和结果视图
    一、返回值分类1、字符串@Controller@RequestMapping("test")publicclasstest{@RequestMapping("testString")publicStringtestString(Modelmodel){Useruser=newUser();user.setUserName("李四");......
  • jmeter之仅一次控制器、If控制器、前置处理器beanshell、后置处理器beanshell
    1、仅一次控制器作用是把请求放到仅一次里面的时候,不管循环数写几次,放到仅一次控制器里的请求都只跑一次,大部分用在登录,一般就登录一次就可以了,还有jdbc连接也是连接一次就可以了,不用重复连接。2、If控制器如果(If)控制器,if控制器如果里面的条件不满足,是不执行里面的请求的,看用户自......
  • spring mvc一个Controller响应多个请求
    1.1. 控制器的实现packagecom.morris.controller;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importorg.springframework.web.servlet.ModelAndView;importorg.springframework.web.servlet.mvc.multiaction.Multi......
  • Go中响应式编程库RxGo详细介绍
    最近的项目用到了RxGo,因为之前从没有接触过,特意去学了学,特此记录下。文章很多内容是复制了参考资料或者官方文档。如果涉及侵权,请联系删除,谢谢。1、RxGo简介1.1基础介绍RxGo是一个基于Go语言的响应式编程库,它提供了一种简单而强大的方式来处理异步事件流和数据流。RxGo的......
  • 仿chatGPT或chatPDF的前端界面布局,css实现对话聊天布局代码,响应式左右分栏布局(附完整
    chatPDF或者chatGPT的界面挺简洁的,就是一个左侧的列表以及右侧的对话列表,现在使用css实现这样的布局充分运用了flex布局方式实现,左右分栏,以及对话形式展示效果下面是效果图: 在手机设备看就隐藏左侧,右侧100%适应 下面就是html和css的布局代码<style>.chatpdf{......
  • Qt编写网络摄像头推流(4路1080P主码流只占用0.2%CPU/极低延时极速响应)
    一、前言说明将从网络摄像头拉流过来的视频流重新推流出去,是目前一个很常规的做法,尤其是推流到流媒体服务中心,这样流媒体服务中心就把散落在各个区域的监控摄像头集中起来统一管理,同时提供对外一致的访问接口。很多时候不仅仅是几个摄像头,很可能是几百个上千个,所以对推流程序也是......
  • Response对象-响应字符数据
    Response响应数据1.response将字符数据返回到浏览器需要两步:1.通过response对象获取字符输出流PrintWriterwriter=resp.getWriter();2.通过字符输出流写数据:writer.writer(“aaa”);案例浏览器中打印出字符/***响应字符数据:设置字符数据的响应体*/@WebServle......
  • win32api添加按钮与响应
    #ifdefined(UNICODE)&&!defined(_UNICODE)#define_UNICODE#elifdefined(_UNICODE)&&!defined(UNICODE)#defineUNICODE#endif#include<tchar.h>#include<windows.h>#defineIDB_ONE3301#defineIDB_TWO3......