如何在JMeter中替换多个十六进制代码?

问题描述 投票:0回答:1

我有一个JMeter脚本,需要替换一些十六进制代码:

&#x2b-> +&#x3d-> =

这不是一个新问题,我已经看到了各种解决方案。

示例:

${__javaScript(decodeURIComponent('${SAMLResponse}'))} 

我尝试过的所有方法(包括上述方法之一)都没有为我工作。

我可以在加特林和LoadRunner中成功完成此操作,但到目前为止在JMeter版本5.3中还没有完成

在加特林,我使用转换字符串:

。check(regex(“”“”(?<= SAMLResponse“ type =” hidden“ value =”)(。*)(?=“)”“”)。transform(str => str.replace(“ =“,” =“))。transform(str => str.replace(” +“,” +“))。saveAs(” SAMLResponse“))]

注意: stackOverflow会自动转换我刚刚键入的十六进制代码。我真的不是在尝试将加号转换为加号或将等号转换为等号。

使用这样的语法:

$ {__ javaScript(“ $ {c_SAMLResponse_Raw}”。split('+')。join('+'),c_SAMLResponse)}

JSR223 javascript预处理器中],我可以使事情适用于一种十六进制代码,例如,&#x2b转换为+,但不能适用于两种不同的十六进制代码。

我有一个JMeter脚本,在其中需要替换一些十六进制代码:+-> + =-> =这不是一个新问题,我已经看到了各种解决方案。示例:$ {__ javaScript(...

javascript jmeter hex decode
1个回答
0
投票
  1. 如果仍要继续使用JavaScript,则在将十六进制字符串转换为ascii字符串时,通常不应该替换单个值-这是sample solution

© www.soinside.com 2019 - 2024. All rights reserved.