使用Jmeter中的正则表达式提取器提取JSON响应

时间:2012-10-09 14:44:46

标签: regex json jmeter

我想从登录Web服务收到的JSON响应中提取密钥值,并将该密钥值传递给所有其他后续服务。

注意:此键值是动态的。

JSON响应如下所示:

{
 "key":"jwtjWgwnqIVapQeDh47rkFaKV6E",
 "username":"Tester",
 "password":"xyz",
 "servername":"123.45.6.789",
 "mailpath":"mail/tmail5.nsf",
 "pin":"xxxx",
 "defaultAttachments":"OFF",
 "sendMailsFor":"W-1",
 "serverTime":"10/09/2012 20:02:57"
}

请帮助我编写reqular表达式以提取相同的表达式并将该键值传递给所有其他下一个Web服务。

请让我知道我应该在“参考名称:”,“正则表达式:”,“模板:”,“匹配编号:”字段中写什么,以及如何在下一个网络中声明“参考名称”服务。

谢谢!

1 个答案:

答案 0 :(得分:2)

如果key外观在响应中是唯一的,您可以简单地使用Regular Expression Extractor添加到返回json响应的HTTP请求中,使用如下的正则表达式:

HTTP Request
    Regular Expression Extractor
    Reference Name: authKey
    Regular Expression: "key":"(.+?)"
    Template: $1$
    Match No.: 1

并在测试中的所有其他请求/采样器中将提取的值引用为${authKey}


同样,您可以查看this相同的情况 并且请不要在将来懒得先看一下:看来你的问题的答案已经存在了。