我需要使用正则表达式通过jmeter从响应中提取会话ID和用户ID。
响应:
\"SessionIdEncr\":\"TLGdqhQbxkEOziVJYXMD7Q==\",\"userIDEncr\":\"9xJbu+CGYN5RnnALeC8mKQ==\"
正则表达式是什么?
答案 0 :(得分:0)
尝试使用此模式:
"SessionIdEncr":"([^"]+)","userIDEncr":"([^"]+)"
关于正则表达式模式的解释不多,除了([^"]+)
使用技巧来捕获值之外。只要不捕获另一个双引号,它就继续进行,这将意味着该键/值对的结束引号。
这将捕获基数为64的编码后的会话ID和用户ID,并使它们在提取器模板中以$1$
和$2$
的形式提供。
答案 1 :(得分:0)
配置如下:
您将可以在需要时将SessionID称为${id_g1}
,将UserId
称为${id_g2}
参考文献:
答案 2 :(得分:-1)
在JMeter中,您可以使用查看结果树的Regexp Tester测试/修复正则表达式:
Regexp Tester视图仅适用于文本响应。它在上部面板中显示纯文本。 “测试”按钮允许用户将正则表达式应用到上部面板,结果将显示在下部面板中。 正则表达式引擎与正则表达式提取器中使用的引擎相同。
对于您的情况,请创建2个Regular Expression Extractor,对于会话ID,请使用以下正则表达式:
SessionIdEncr\\":\\"([^\\]+)
类似地获取用户ID。