我有一个客户端javascript sdk,可将图像提交到使用multer库解析图像的服务器端node.js api。
但是,即使我注意到我将标头设置为content-type
multipart-formdata
multer,也会引发错误提示
错误:多部分:未找到边界
async submitDocument(id, side, image) {
const url = this.API_URL + "/api/document";
let formData = new FormData();
formData.set("image", image, "front.jpg");
formData.set("side", side);
let headers = new Headers();
headers.set("content-type", "multipart/form-data");
headers.set("Authorization", "Bearer " + this.API_KEY);
const request = {
method: "POST",
body: formData,
headers: headers,
};
try {
const response = await fetch(url, request);
const data = await response.json();
return data;
} catch (err) {
throw err;
}
}
答案 0 :(得分:1)
如错误消息所述,multipart/form-data
内容类型需要一个boundary
参数。
请勿自行设置Content-Type
。允许浏览器从formData
对象生成它。
答案 1 :(得分:-1)
npm
模块connect-multiparty
可能对您有所帮助。从服务器端节点应用程序。
server.js
const multipart = require('connect-multiparty');
const multipartMiddleware = multipart();
router.post('/api/document', multipartMiddleware);
router.post('/api/document', (req, res) => {
console.log(req.files)
})
邮递员api测试样本- https://i.stack.imgur.com/vxBpz.png