%40未在Jmeter中解码为@

时间:2013-12-04 05:12:07

标签: csv encoding jmeter

我正在尝试使用Jmeter工具进行负载测试,我通过csv文件提供数据,该文件包含登录请求的所有电子邮件和密码。但是在传递参数的同时,Jmeter使用'%40'编码'@'符号,如果我在我的csv中将%40替换为@,则不会在Jmeter中将其解码为@。对于其他特殊字符,编码和解码正确发生。请帮忙。

3 个答案:

答案 0 :(得分:0)

应该完全可以预料到。

如果您通过GET请求登录%40是正确的@符号编码方式。

如果您要发送POST请求,JMeter应自动发送@符号(至少我的JMeter 2.10会这样做)

您可能希望尝试以下方法之一:

  1. 添加View Results Tree侦听器,切换到HTTP标签,查看实际发送的内容。
  2. 确保取消选中Encode?框用于电子邮件参数
  3. 明确告诉JMeter通过__urldecode()功能
  4. 解码电子邮件
  5. 使用Beanshell Pre Processor正确编码/解码您的电子邮件

    import java.net.URLDecoder;
    import java.net.URLEncoder;
    
    String email = "someone@example.com";
    String encoded = URLEncoder.encode(email, "UTF-8");
    String decoded = URLDecoder.decode(encoded, "UTF-8");
    

答案 1 :(得分:0)

当我们通过参数进行时,这就会到来 如果我们使用可以正常工作的“身体数据”。

我用这种方式。 { “密码”: “$ {密码}”, “EMAILID”: “$ {EMAILID}”}

答案 2 :(得分:0)

对于HTTP请求,将客户端实现更改为Java

  1. 从HTTP请求
  2. 中选择“高级”选项卡
  3. 在客户实施中>选择实施中的Java
  4. enter image description here