菜鸟程序员遇坑记1 - FormData 之传送文件数组和对象
今天遇到一个需求,后端要求前端返回id ,文件数组,一个文件信息对象的形式发给他。而这个需求是之前一个提桶跑路的同事写的,然后我来接手,然后我就发现之前是用formData给后端一个字段对应一个文件,但是现在需求变更了,然后我模仿写了一下很尴尬的是后端除了id 之外收到其他两个字段里面都没有东西。
然后通过面向百度编程发现如果是想要以文件数组的形式发给后端动的话,这样是不行的。
// 字段名,文件数组
formData.append(‘array’, array);
下面才是正确的做法
// 字段名 + 下标 ,具体文件
formData.append(`array${index}`, array[index]);
然后好不容易把文件数组成功发给了后端竟然发现他还是拿不到对象
于是试了一系列方法 把对象转为JSON给后端等等后端还是拿不到
然后发现网上的大部分好像都是传键名:键值的来的
最后因为开发有点急无奈之下最后和后端讨论了一下只能把接口拆为两个,文件对象另外为json的形式发给他。
如果有大佬可以指导一下formdata怎么传对象,万分感谢!