有没有办法使用正则表达式提取器来获取整个 .NET 加密查询字符串并将其放入变量中?
例如,对于通过 GET 的 URL:
https:/www.website.com/folder/page.aspx?jfhjHSDjgdjhsjhsdhjSJHWed
我正在尝试这样${myQueryString} = jfhjHSDjgdjhsjhsdhjSJHWed
做,以便稍后在测试计划中通过将变量附加到未来的 GET 来重播它。
第一个问题,你从哪里得到 GET url,你是从 http 请求中提取它的吗?
如果您无论如何都拥有它“硬编码”或在 jmeter 变量中,您可以将 beanshell 采样器添加到您的测试用例并添加以下代码:
vars.put("queryParams","${__javaScript(/\?(.*)$/.exec('http://stackoverflow.com/questions/2389738/jmeter-get-entire-query-string-into-variable?testqueryparameter=&anotherqueryparam=IhavesomeValue')[1],)}");
我曾经http://stackoverflow.com/questions/2389738/jmeter-get-entire-query-string-into-variable?testqueryparameter=&anotherqueryparam=IhavesomeValue
测试过这个案例。
结果存储在变量queryParams
中是testqueryparameter=&anotherqueryparam=IhavesomeValue
那是你要找的吗?
(?<=\?)[^?]+$
将匹配?
字符串中最后一个之后的所有内容。我希望这就是你的意思。