问题
QQ群有个同学说,有一个接口,请求方式为post,入参为json格式,使用postman和jmeter请求返回的数据不一样。
在用postman请求时,返回数据与预期一致,只有一个查询结果,请求如下:

postman请求.png

postman返回数据.jpg
在用jmeter请求时,返回数据比预期多,并且数据不对:

jmeter请求.png

jmeter返回数据.jpg
解析
-
检查接口、参数是否正确
jmeter与postman接口地址、参数完全一样 -
检查
jmeter是否添加了请求头已添加请求头
Content-Type=application/json -
切换
get方法请求请求失败,后台不支持
-
切换为
post,paraments填写参数请求失败,后台不支持
经常一系列尝试,无论怎么修改请求方式,修改参数填写方式,均不行。这时候想到请求参数里面有中文,于是在
Content encoding里填写UTF-8,再次请求,ok
总结
- 猜测
postman在识别到有中文时会自动转码 - 以后在用
jmeter请求时,如果入参有中文,最好设置Content encoding为UTF-8