【发布时间】:2026-02-16 02:20:08
【问题描述】:
我正在尝试将我的服务器端应用程序 (Express.js) 中的 zip 文件作为二进制文件上传到第三方 API(不是 multipart/form-data,而是相当于 Postman 中的正文二进制文件),但我从axios 得到以下错误:
Error: ENOENT: no such file or directory, open '/Users/Name/[object Object]']
我现在的情况:
form = new FormData();
form.append('file', fs.createReadStream(__dirname + '/' + req.files), req.files.name);
axios.post(url, form, {
headers: {
'Content-Type': `multipart/form-data; boundary=${form._boundary}`
}
});
req.files 输出:
file: {
name: 'myfile.zip',
data: <Buffer 50 4b 03 04 0a 00 00 00 00 00 66 6c 75 52 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 09 00 64 6f 63 6b 65 72 2d 6d 69 6e 65 63 72 61 66 74 2d 73 65 72 ... 139643 more bytes>,
size: 139693,
encoding: '7bit',
tempFilePath: '',
truncated: false,
mimetype: 'application/zip',
md5: 'e2b648ad295922c6d8d3ef1bc8ce1309',
mv: [Function: mv]
}
【问题讨论】:
-
console.log(req.files) -
@madflow
file: { name: 'myfile.zip', data: <Buffer 50 4b 03 04 0a 00 00 00 00 00 66 6c 75 52 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 09 00 64 6f 63 6b 65 72 2d 6d 69 6e 65 63 72 61 66 74 2d 73 65 72 ... 139643 more bytes>, size: 139693, encoding: '7bit', tempFilePath: '', truncated: false, mimetype: 'application/zip', md5: 'e2b648ad295922c6d8d3ef1bc8ce1309', mv: [Function: mv] } }