jmeter-beanshell学习17-上传文件接口删请求头

jmeter也可以上传文件,但是遇到一个问题,单个上传文件的接口没问题,如果和其他接口放一起就不通了。先放一个上传文件的截图

红框的地方直接全勾上,上传文件的请求头是Content-Type=multipart/form-data,而且这个不能像常规那样,写在http信息头管理器里面,必须勾选这里的。

文件名称就是本地文件绝对路径,路径有中文好像不太好使,还是尽量都英文吧。参数名称是自己接口的参数名。MIME常见类型,放在下面了

|-----------------|---------------------------------------------------------------------------|
| .txt | text/plain |
| .jpg, .jpeg | image/jpeg |
| .png | image/png |
| .pdf | application/pdf |
| .doc | application/msword |
| .docx | application/vnd.openxmlformats-officedocument.wordprocessingml.document |
| .xls | application/vnd.ms-excel |
| .xlsx | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| .zip | application/zip |
| .mp4 | video/mp4 |

如果还有其他接口,而且写了一个公用的信息头管理器,那每个接口的默认请求头都是Content-Type= application/json,这个优先级还特别高,会导致上传附件报错。大概下面这种情况

这时候需要用beanshell去掉默认请求头,还是用JSR223 预处理程序,语言选择beanshell

java 复制代码
import org.apache.jmeter.protocol.http.control.HeaderManager;
// 获得请求头信息
HeaderManager headers = sampler.getHeaderManager();
// 删除请求头指定的信息
sampler.getHeaderManager().removeHeaderNamed("Content-Type");

放上这段代码就可以了

相关推荐
行思理9 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
楚山之石13 小时前
【Medical Image Analysis】深度学习医学图像合成综述:伪CT、合成MRI与合成PET的架构、性能与临床边界
图像处理·人工智能·学习·mr·mri
Li_RuiQi14 小时前
DAgger方法演进_独立学习笔记
笔记·学习·计算机视觉
SteveSenna16 小时前
aubo学习:realsense手眼标定
学习·机器人·视觉检测
Li_RuiQi18 小时前
DAgger与交互式模仿学习_ACT学习笔记
笔记·学习
Canmag 兴隆磁性18 小时前
回复磁导率 μ_R:永磁体在动态磁路中的关键参数
开发语言·学习·r语言·永磁材料·充磁·磁导率
lengxuenong18 小时前
区间覆盖问题 · 简明学习手册1
java·学习·算法
悟道书生19 小时前
若依 RBAC 权限控制学习笔记
java·网络·笔记·sql·学习·vue
Be for thing20 小时前
PyTorch自动求导Autograd详解|requires_grad、backward、grad、梯度清零
pytorch·学习·1024程序员节