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");

放上这段代码就可以了

相关推荐
报错小能手6 分钟前
ios开发方向——对于实习开发的app(Robopocket)讲解
开发语言·学习·ios·swift
今儿敲了吗15 分钟前
51| 八皇后
c++·笔记·学习·算法·深度优先
zzb158024 分钟前
Agent记忆与检索
java·人工智能·python·学习·ai
炽烈小老头26 分钟前
【每日天学习一点算法 2026/03/31】不同路径
学习·算法
计算机安禾38 分钟前
【数据结构与算法】第17篇:串(String)的高级模式匹配:KMP算法
c语言·数据结构·学习·算法·visual studio code·visual studio·myeclipse
婷婷_1722 小时前
【PCIe 验证每日学习・Day22】PCIe 拓扑结构与 Switch / 桥片转发全解析
网络·学习·程序人生·芯片·pcie·pcie学习·pcie 拓扑
落痕的寒假2 小时前
[深度学习] 大模型学习7-多模态大模型全景解析
人工智能·深度学习·学习
墨^O^2 小时前
进程与线程的核心区别及 Linux 启动全过程解析
linux·c++·笔记·学习
寒秋花开曾相惜3 小时前
(学习笔记)3.9 异质的数据结构(3.9.1 结构)
c语言·网络·数据结构·数据库·笔记·学习
charlie1145141913 小时前
嵌入式C++教程实战之Linux下的单片机编程:从零搭建 STM32 开发工具链(4)从零构建 STM32 构建系统
linux·开发语言·c++·stm32·单片机·学习·嵌入式