如何在Postman中发送不含文件的二进制格式请求?
实现Postman发送无文件的二进制请求的方法
当然有可行的方案!我之前对接一些二进制协议的接口时,刚好遇到过一模一样的需求,下面分享几种亲测有效的方法:
方法1:Raw模式直接输入/粘贴二进制数据
- 打开你的请求,切换到Body标签页,选择Raw选项
- 在Raw标签的格式下拉菜单里,选择
Binary(不要选Text等其他格式) - 此时你可以直接在编辑器区域粘贴原始二进制数据,或者通过其他工具生成二进制内容后复制过来。这种方法适合数据量小、内容固定的场景。
方法2:用Pre-request Script动态生成二进制请求体
如果你的二进制数据需要动态生成(比如根据参数计算、序列化对象等),这个方法更灵活:
- 切换到请求的Pre-request Script标签页
- 编写脚本生成二进制数据,并覆盖请求体。举几个常见的例子:
- 生成简单的字节数组:
// 生成对应"Hello"的二进制字节数组 [0x48, 0x65, 0x6C, 0x6C, 0x6F] const byteArray = new Uint8Array([0x48, 0x65, 0x6C, 0x6C, 0x6F]); pm.request.body = { mode: 'raw', raw: byteArray.buffer }; - 从字符串转换为二进制(比如UTF-8编码):
const str = "自定义的二进制内容源"; const buffer = Buffer.from(str, 'utf8'); pm.request.body = { mode: 'raw', raw: buffer };
- 生成简单的字节数组:
- 回到Body标签页,选择Raw并确认格式为
Binary,发送请求即可。此时请求体就是脚本生成的二进制数据,完全不需要依赖文件。
关键注意事项
- 记得设置正确的
Content-Type请求头,比如通用二进制格式可以设为application/octet-stream,如果是特定协议的二进制数据,要对应设置协议要求的Content-Type值。 - 如果你用Pre-request Script生成数据,发送前可以在Postman的Console里查看请求体的内容,确认是否符合预期。
内容的提问来源于stack exchange,提问作者Sr. Nadie




