jmeter - 在后续请求中传递 "="(相等)符号时遇到问题 - Jmeter

标签 jmeter url-encoding

我刚开始使用 jmeter。
我的应用程序返回一个带有加密值的 url 作为响应,它必须作为获取下一页的请求传递。加密值总是以“=”结尾,例如。 “http://mycompany.com/enc=EncRypTedValue= ”。在将值作为请求传递时,“=”被替换为其他字符,例如 '%3d' ex "http://mycompany.com/enc=EncRypTedValue%3d"。由于 token 已更改,我的应用程序未为请求提供服务。

最佳答案

我花了一段时间才理解这一点,与网络标准 URI (URL) 中的其他语言和环境不同,不使用引号或一些转义字符来隐藏特殊字符。

相反,需要通过分别对 的每个单独参数 进行编码来正确编码 URL,以便构建完整的 URL。在 JavaScript 中,参数的编码/解码分别使用 encodeURIComponent() 和 decodeURIComponent() 完成。

例如,以下内容:

http://example.com/?p1=hello=hi&p2=three=3

应该使用 encodeURIComponent() 对每个参数进行编码以构建以下内容:

http://example.com/?p1=hello%3Dhi&p2=three%3D3

  • 请注意,用于参数 p1= ... p2= 的等号保持原样。
  • 不要尝试编码/解码整个 URL,它不会工作。 :)
  • 不要被浏览器地址栏/字段上显示的内容所迷惑,这只是人类友好的字符串,当您将其复制到剪贴板时,浏览器将对它进行编码。

  • 希望这可以帮助某人。

    关于jmeter - 在后续请求中传递 "="(相等)符号时遇到问题 - Jmeter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19994959/

    相关文章:

    java - JMeter 400错误文件上传

    JMeter测试计划登录问题

    video-streaming - jmeter恒定视频流

    java - 如何在 Java 中进行 URL 解码?

    java - URISyntaxException 的疯狂行为

    java - 使用 Jmeter Redis 数据集从 Redis 获取值(value)

    java - 如何提取json路径并查找数组长度?

    html - 在 HTML5 的 URL 中是否仍需要对 & 符号进行编码?

    javascript - 具有任意字符的 AngularJS 路由参数

    java - 在 Java 中构造 URI 时保留转义字符