最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

React axios上传多个文件

运维笔记admin11浏览0评论

React axios上传多个文件

React axios上传多个文件

我正在尝试在React中使用axios上传多张图片,但我无法弄清楚出了什么问题。首先,我尝试上传单个图像,但效果很好。但是对于多张图像,我无法使用。

我正在这样创建FormData:

for (let i = 0; i < images.length; i++) {
    formData.append('productPhotos[' + i + ']', images[i]);
}

axios请求看起来像这样

    const config = { headers: { 'Content-Type': 'multipart/form-data' } };

    axios
        .post(endPoints.createProduct, formData, config)
        .then(res => console.log(res))
        .catch(err => console.log(err));

我的后端写为node / express,我正在使用multer进行上传。签名看起来像这样:

app.post("/product", upload.array("productPhotos"), (req, res) => {

我在PostMan中尝试了此后端端点,并且可以正常进行上传,因此错误必须在前端。感谢您的帮助。

UPDATE在formData中传递多个文件的正确方法:

images.forEach(img => {
    formData.append("productPhotos", img)
})
回答如下:

这不是生成密钥的正确方法。您可以尝试这样的事情:

let productimages = [];

for (let i = 0; i < images.length; i++) {
    productimages.push(images[i]);
}
formData.append('productPhotos', images);

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论