我正在尝试将本地文件发送到 API。代码中没有错误,但远程服务器上的文件已损坏。我究竟做错了什么?该文件存在于我的目录中。这是一个 82 kb 的 pdf 文件,但在远程服务器中它显示 149kb 文件并且无法读取。
var data = new FormData();
data.append('file', fs.createReadStream("test.pdf") );
data.append('profile', 'xyz');
data.append('filename', "test.pdf");
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.xyz.com/uploads',
headers: {
'Authorization': `Bearer xyz`,
'Content-Type': `application/pdf`
},
data : data
};
axios.request(config)
.then((response) => {
// log(response)
res.setHeader("Content-Type","application/json");
res.status(200).send({"result":"success"}).end()
}).catch((error) => {
log(error);
res.setHeader("Content-Type","application/json");
res.status(200).send({"result":"fail"}).end()
});
我也尝试过使用下面的标题,但没有成功。
'Content-Type': `multipart/form-data; boundary=${data._boundary}`
我发现我没有添加需求。这解决了问题:
const FormData = require("form-data");