URL encode variable in Jmeter

2020-02-10 03:52发布

问题:

I need to encode a variable in Jmeter, but it isn't a parameter. For example:

URL path: /folder/guest/id;token=${token}/profile?details=yes

I want to encode the ${token} variable, and only the token variable. I know that you can select encode in the parameters section, but this isn't a parameter.

Does anyone know how to do this?

回答1:

JMeter as of version 2.10 now includes a urlencode function.

${__urlencode(${token})}

See http://jmeter.apache.org/usermanual/functions.html



回答2:

The best way I found to do this was to use a JavaScript function:

${__javaScript(encodeURIComponent('${token}'))}

So the request would be:

/folder/guest/id;token= ${__javaScript(encodeURIComponent('${token}'))}/profile?details=yes


回答3:

If you are using JMeter GUI -- HTTP Request, you can check the encode option:



回答4:

__urlencode function works fine. It is just we need to put token variable in
quotes. i.e. ${__urlencode('${token}')}