JMeter中以Body数据形式上传PDF文件的配置方法
JMeter文件上传配置说明(Windows身份验证场景)
核心配置结论
- 配置区域:必须使用
File Upload区域,Parameters和Body Data都不适合文件上传的正确格式。 - multipart选项:必须勾选
Use multipart/form-data,这是文件上传请求的标准格式要求。
针对你遇到的问题解析
Blazemeter录制的参数错误:
Blazemeter Chrome扩展录制文件上传时,会错误地将文件的二进制内容解析为Parameters参数,这是录制工具的局限性,不能直接复用录制结果,必须手动调整到File Upload区域。Fiddler中显示的"%PDF-1.3..."内容:
这是文件二进制内容被URL编码后的显示形式,你不需要手动输入这些内容。JMeter的File Upload区域会自动读取本地文件、处理编码并生成正确的请求体,你只需要填写本地文件的绝对路径即可。
具体配置步骤
- 确保HTTP请求的请求方法为
POST(文件上传几乎都用POST方法)。 - 勾选
Use multipart/form-data选项。 - 清空Parameters区域的所有内容(录制生成的参数都是错误解析的,必须删除)。
- 在File Upload区域添加一行配置:
- File Path:填写本地文件的绝对路径,比如
C:\test\sample.pdf - Parameter Name:必须和Fiddler捕获的Form-Data中的文件参数名完全一致(比如Fiddler里显示的参数名是
uploadFile,这里就填uploadFile) - MIME Type:对应文件的类型,PDF填
application/pdf,图片填image/jpeg,可从Fiddler的请求头或Form-Data中获取对应值 - Send File as Parameter:不要勾选(除非你的应用有特殊要求,绝大多数场景不需要)
- File Path:填写本地文件的绝对路径,比如
额外注意事项
- Windows身份验证配置:在HTTP请求的「Advanced」标签页中,勾选
Use Windows Authentication (NTLM),并按需填写域、用户名、密码;也可以通过添加HTTP Authorization Manager元件来配置NTLM认证信息。 - 文件路径有效性:确保填写的文件路径是正确的绝对路径,JMeter需要能访问到该文件,避免使用相对路径导致文件找不到。
- 请求验证:配置完成后,用「View Results Tree」元件查看请求体,确认multipart格式正确,文件内容被正确包含在请求中。
内容的提问来源于stack exchange,提问作者Shankar PK
相关产品推荐
相关产品推荐

