0

假设我有这个 JSON 响应:

    [
     {
      "id": "15",
      "userId": "1",
      "new": "true",
      "date": "08/12/2013",
      "text": "…"
     },
     {
      "id": "16",
      "userId": "1",
      "new": "false",
      "date": "08/12/2013",
      "text": "…"
     }
    ]

每个对象的id的常规表达式提取器将具有以下配置:

    Reference name: object
    Regular Expression: "id":"(.+?)"
    Template: $1$
    Match No: -1
    Default value: null

我需要的是从每个对象中提取idnew,以便在 ForEach 控制器中一起使用它们。对于这种情况,我需要一些关于正则表达式的帮助。

    Reference name: object
    Regular Expression: ¿? "id":"(.+?)" ¿? "new":"(.+?)" ¿?
    Template: $1$$2$
    Match No: -1
    Default value: null

另外,我如何引用对象变量的每个特定部分?${object_1}${object_2}

编辑:对不起,我忘了提到我专门使用 Jmeter。

4

3 回答 3

2

您可以设置:

在此处输入图像描述

在此处输入图像描述

然后使用 ForEach 控制器,或者如果您只需要一些值,那么您将拥有:

id_1=15

id_2=16 ...新_1=真

新_2=假...

索引是相关的。

否则你可以看看这个:

于 2013-08-12T15:44:30.180 回答
0

这是 JSON。那么,为什么不将其解析为 JSON。
这种方式很简单。我使用了org.json Java 解析器。

String jsonData = "[\r\n" + 
        "        {\r\n" + 
        "         \"id\": \"15\",\r\n" + 
        "         \"userId\": \"1\",\r\n" + 
        "         \"new\": \"true\",\r\n" + 
        "         \"date\": \"08/12/2013\",\r\n" + 
        "         \"text\": \"…\"\r\n" + 
        "        },\r\n" + 
        "        {\r\n" + 
        "         \"id\": \"16\",\r\n" + 
        "         \"userId\": \"1\",\r\n" + 
        "         \"new\": \"false\",\r\n" + 
        "         \"date\": \"08/12/2013\",\r\n" + 
        "         \"text\": \"…\"\r\n" + 
        "        }\r\n" + 
        "       ]";

JSONArray jsonRoot = new JSONArray(jsonData);

for (int i = 0; i < jsonRoot.length(); i++) {
    JSONObject jsonObj = jsonRoot.getJSONObject(i);
    System.out.println("Object_" + (i+1) + " = id: " + jsonObj.getString("id") +
            ", new: " + jsonObj.getString("new"));

输出

Object_1 = id: 15, new: true
Object_2 = id: 16, new: false
于 2013-08-12T15:39:37.630 回答
0

如果有帮助,我已经为这个主题创建了一个截屏视频。一探究竟。

http://my.kpoint.com/kapsule/gcc-744b552e-c91e-4db2-9d39-37c6e66f22ac/t/jmeter-tutorial-json-array-extraction

于 2013-08-13T03:38:45.757 回答