jmeter如何捕获url编码值并在不重新编码的情况下发送它

时间:2015-02-07 18:50:15

标签: jmeter

我对已经使用url编码的值有问题,我捕获它很好但是当我发送它时,该值会被重新编码... 这是值:

_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aes type="text/javascript">

我使用RegEx捕获:

Reference name: RSM
Regular Expression: _TSM_CombinedScripts_=(.+?)" type="text/javascript">

我放了一个BSF采样器来查看捕获的值,并且很好。

但是当我将值放在以post方法(rsmScriptManager_TSM = $ {RSM})将其发送到服务器的字段中时,将重新重新编码该值,如下所示:

rsmScriptManager_TSM=%253b%253bSystem.Web.Extensions%252c%2BVersion%253d4.0.0.0%252c%2BCulture%253dneutral%252c%2BPublicKeyToken%253d31bf3856ad364e35%253aes

请注意,例如在链的开头是:

 %253b%253bSystem.Web.Extensions

字面值是:

;;System.Web.Extensions

&#34 ;;;" url编码为%3b%3b,就像我捕获它一样,但是什么时候将它发送到服务器重新编码"%"与%25

HTML URL Encoding Reference

而不是%3b%3b值正在发送%253b%253:

%253b%253bSystem.Web.Extensions

对其他角色也是如此,例如" +"

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

确保您没有为提取的请求参数选中Encode?

Decode

还有__urldecode功能可以提供帮助。

有关__urldecode和其他有用的JMeter函数的更多信息,请查看How to Use JMeter Functions帖子系列