如何提交多部分图片-错误:多部分:未找到边界

时间:2019-12-10 13:09:44

标签: javascript node.js multipartform-data multer form-data

我有一个客户端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;
        }

    }

2 个答案:

答案 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