将Multiple FormData()发布到Node Express



因此,我有三个表单需要一次性提交。

提交时,从三个表单收集的数据必须通过触发POST请求的API在DB中创建三行

如何将变量alldata传递给API?

如果我只将其中一个作为data1传递,那么它完全可以工作。但将它们作为数组传递则不然。

感谢你的帮助。

const data1 = new FormData()
data1.set("images", values.image1)
data1.set("detail", values.detail1)
const data2 = new FormData()
data1.set("images", values.image2)
data1.set("detail", values.detail2)
const data3 = new FormData()
data1.set("images", values.image3)
data1.set("detail", values.detail3)

var alldata = [data1,data2,data3]

const res =  axios(
"post",
"/APIGOESHERE"
alldata
)

一次只能传递一个表单。您可以将所有参数放在同一个FormData对象中。给它们取相同的名字,Express会将它们收集到一个数组中。使用append()方法添加多个具有相同名称的项目;set将替换该项目。

const data1 = new FormData()
data1.append("images", values.image1)
data1.append("detail", values.detail1)
data1.append("images", values.image2)
data1.append("detail", values.detail2)
data1.append("images", values.image3)
data1.append("detail", values.detail3)
const res =  axios(
"post",
"/APIGOESHERE"
data1
)

最新更新