需要将json响应中的数据传递给后续请求的Post Body数据,但它不起作用,出现问题

时间:2017-02-14 06:03:51

标签: jmeter

我需要将json响应中的数据传递给后续请求的Post Body数据,但它不起作用,出现问题。

第一个请求返回响应正文中的JSON,如下所示:

"accessToken":[{"idToken":"eyJ05C3RU","token":"159c82d30ec3123e873ab989cc"}]
0000000

我必须提取' accessToken'将值传递给下一个请求的bodydata(不在请求的参数选项卡下,它必须传递给下一个请求的BodyData选项卡)

我已经为JSON路径提取器创建了第一个获取具有这些值的响应数据的请求。 1JSON路径提取器:$..accessToken[0].idToken

在json路径表达式中传递:$ .. accessToken [0] .idToken

在下一个请求的请求中:{ "idtoken": ${idToken}}

Description

在树中查看结果: 将帖子数据显示为请求:

POST data:{  "idtoken": ${idToken}}

响应数据:

  

omething break!SyntaxError:意外的令牌$

at `Object.parse (native)`

请帮助解决问题。这将非常有用。

2 个答案:

答案 0 :(得分:0)

很可能你的JSON Path表达式错误或者响应不是有效的JSON。

您可以回退到Regular Expression Extractor,这不是那么方便,但可以用于任何文本响应,相关配置将是:

  • 应用于:与JSON路径提取器相同
  • 参考名称:idToken
  • 正则表达式:"idToken"\s?:\s?"(.+?)"
  • 模板:$1$

演示:

JMeter Regular Expressions Demo

参考资料:

答案 1 :(得分:0)

感谢所有帮助。我可以通过在下一个请求正文中使用JSON路径表达式提取器作为“idtoken”来解决我的问题:“$ {idToken_1}”。