簡體   English   中英

Jmeter正則表達式提取器獲取JSON結構

[英]Jmeter Regular expression extractor get JSON structure

我需要可以從Jmeter正則表達式提取器中的序列中提取JSON結構的正則表達式

[message1]

    {
        "headers": {
            "messageId": "a0923b4c-33f6-4b0c-be53-be17332d51fa"
        },
        "payload": {
            "maxIdlePeriod": 1800
        },
        "status": {
            "code": "ok",
            "errorMessages": []
        }
    }


[message2]


    {
        "headers": {
            "messageId": "46fb53f0-c3de-4270-bad5-6f504af197f9"
        },
        "payload": {
            "termsUrl": "https://termsUrl.com",
            "termsVersion": "8201"
        }
    }

我已經嘗試過在其他堆棧線程{(?:[^ {}] |(?R)) }中找到的此正則表達式,但是Java中似乎不支持遞歸-無效的表達式:{(?:[^ {}] |(?R)) }序列(?R ...)無法識別

提前致謝

因此,您似乎在單個響應中具有一系列不同的JSON“文檔”,對嗎?

好吧,如果您正在尋找最簡單的方法-為什么不將其包含在單個根目錄下,那么您將在元素列表中使用單個JSON,從而能夠使用JSON提取器后處理器?

如果您堅定地使用正則表達式提取器-我可能建議您先嘗試切換多行模式(使用(?:m) ),然后再使用類似(^\\{\\n$.+^\\}\\n$) -免責聲明:未經測試!,尤其是在多行模式下用於開始/結束行錨點的地方-但我希望您有這個主意(仔細檢查您是否具有\\n\\r\\n也是有意義的,並且,也許可以使用Central .+使其更加具體)。

或選擇JSR223 / Beanshell后處理器並以自定義方式解析您的響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM