大家好,又见面了,我是你们的朋友全栈君。
在做接口并发测试的时候,才发现Jmeter中的Parameters和Body Data两种参数格式并不是简单的一个是xx=xx,另外一个是json格式的参数
先看一个接口
[post] /api/xx/xxxx/xxxx 通知服务端文件上传完毕
输入参数:
http content type: application/json
名称 | 类型 | 是否必须 | 参数限制 | 描述
--------- | ----------- | -------- | ---------- | ----------
cid | string | 是 | cid.length==36 | id
version | int | 是 | 无 | 版本
开始时在Jmeter的请求为
请求返回的结果为
{"msg":"{\"message\":\"error\",\"error_code\":4000}","ret":"error"}
查找后发现是Parameters和Body Data的使用,还有请求的参数理解有误
仔细看看抓包中的两种“参数”
xx=xx&xxx=xx格式
json格式
Parameters
xx=xx&xxx=xx格式的参数为GET或者POST请求中,url中带的参数值,如:
在一个这样的请求中/api/xx/xxx/xxxx?index=0&pagesize=100&thumb=1
?号后面的可以写在url中,也可以写在Parameters中
Body Data
json格式的是POST请求中的参数,POST请求参数时,看请求的格式,是否需要在请求中添加HTTP信息头管理器,将请求的Content-Type
或者 User-Agent
等进行定义
HTTP请求的格式:
HTTP信息头管理器:
欢迎关注个人公众号
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/149659.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...