如何在 JMeter 中提取完整的 JSON 响应数据?

How to extract complete JSON response data in JMeter?

我是 JMeter 新手,还在学习阶段。

我正在 JMeter 中进行休息呼叫。我收到的响应数据,我想在接下来的休息电话中按原样使用它。我收到的响应数据样本是:

{  
   "token":"ab062ad1-0585-4b41-b491-1bd4f6de57da",
   "refreshToken":"5444b837-7f18-4570-a84b-80dac80b393c",
   "expiresBy":"Sat May 02 14:49:06 EDT 2015",
   "mcomroles":[  
      "Super BA Admin",
      "WorkgroupSuperBAUser"
   ],
   "bcomroles":[  
      "Super BA Admin",
      "WorkgroupSuperBAUser"
   ]
}

为此,我添加了一个正则表达式提取器,但我不知道要给出什么正则表达式。

求推荐。谢谢

如果您想按原样使用响应,请添加 beanshell-post 处理器而不是正则表达式提取器。

vars.put("JSONResponse", prev.getResponseDataAsString());

现在您可以在下一个请求中使用以下语句访问它。

${JSONResponse}

您可以使用 Regular Expression Extractor 获取整个响应并将其保存到 JMeter 变量中。

根据 How to Extract Data From Files With JMeter 指导匹配所有内容的正则表达式

(?s)(^.*)

整个提取器配置应如下所示:

${response} 变量将保存父采样器响应数据。