无法在 axios 中通过 postForm 发送日期

Unable to send date via postForm in axios

提问人:Rasel mia 提问时间:11/15/2023 最后编辑:Shakib AhmedRasel mia 更新时间:11/19/2023 访问量:64

问:

问题描述

我正在做一个nextjs项目。问题是当我通过postForm发布多个图像数组不起作用时,但是如果我使用postForm.append,那么这些图像数组可以正常工作。

axios 版本:“1.6.1”,

这是通过 Axios postForm 发布的示例

   const images = [File, File, File]
   const res = await axios.postForm("/example",images)

这是发布旧流程的示例

const postForm = new FormData();
   images.forEach((img) => {
      postFrom.append("images", img);
    });

如何解决这个问题。

JavaScript Next.js ASIO

评论

0赞 mandy8055 11/15/2023
这回答了你的问题吗?stackoverflow.com/a/47630754/19090048

答:

0赞 Jeevan ebi 11/15/2023 #1

以下是修改代码以使用的方法:axios.postFormData

// Assuming images is an array of File objects
const images = [File, File, File];

const postForm = new FormData();

images.forEach((img, index) => {
  postForm.append(`images[${index}]`, img);
});

// Make the POST request using axios.post
try {
  const response = await axios.post("/example", postForm, {
    headers: {
      "Content-Type": "multipart/form-data", //form-data
    },
  });

  console.log(response.data);
   } catch (error) {
  console.error("Error posting images:", error);
}

请确保使用 而不是 .此外,请确保为对象设置正确的标头,如上面的代码片段所示。axios.postaxios.postFormContent-TypeFormData

评论

0赞 Rasel mia 11/15/2023
感谢您的解决方案,但我必须使用 axios.postForm,因为我必须发送一个大对象和大量图像,因此 postForm.append 不是我项目的解决方案。