一、修改消息头和请求体编码
参数中有中文字符在脚本的参数设置数据的接收编码为UTF-8
我们可以得到结论Content encoding并不能影响返回结果
二、修改本地配置文件
修改bin下的配置文件并重启:jmeter.properties
优点:一次修改,长久使用
三、添加BeanShell Sampler
添加BeanShell Sampler/BeanShell PostProcessor注意要在HTTP请求后面添加
在Script处填写如下代码:prev.setDataEncoding("utf-8");
优点:灵活,随时修改,不需要重启Jmeter
四、查看和修改jmeter源码
ApacheJMeter_http.jarorgapachejmeterprotocolhttpvisualizersRequestViewHTTP.class
eclipse 安装反编译插件(Help——Eclipse Marketplace 输入 Decompiler 搜索并安装此插件–安装重启之后结果)
反编译RequestViewHTTP.class,将ISO-8859-1 ,将其改为UTF-8,然后编译,使用最新class打包替换原来jar。
重启jmeter,运行脚本,查看结果
优点:其实jmeter使用过程中的乱码基本都可以找到源文件改一下源码中的字符集编码来进行解决
五、添加HTTP信息管理器
添加一个HTTP信息头管理器
添加一个Accept信息,添加内容如下:Accept application/xml;application/json;charset=utf-8
这种方式只能影响请求的参数,能指定你的参数以哪种形式传递,对于编码没有作用