form-data express-form 的问题
发布于 8 年前 作者 SHocker-Yu 3362 次浏览 来自 问答

是这样,fir = {“error”:0,“imgBuffer”:{“type”:“Buffer”,“data”:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,…}一串非常长的数据,所以直接Post报错:too large,于是改用formdata,前台JQ代码如下: var fd = new FormData(); fd.append(‘fir’, fir); $.ajax({ url: “/threeInOne”, data: fd, processData: false, contentType: false, type: ‘POST’, success: function (data) { var json=JSON.stringify(data) $("#FPbox_1").append(json) }, error: function (err) {}});

后台nodejs代码如下: function threeInOne (req,res) { var a = JSON.stringify(req.form); console.log (“test:”+a); }

输出结果:test:{} 所以应该是传递值都没有传递成功,fd.append(‘fir’, fir)这句在谷歌F12里是这样的: 3.png 就是我这样的写法并没有把fir的值塞进FormData{}里了?请教各位应该怎么写才能把fir传递给后台并成功打印

5 回复

去查一下multipart/form data

应该是图片已经到Formdata了呀,应该是后端没有处理好,multer走你~

@i5ting 好的,感谢回复

@DevinXian 刚刚看了下 Multer,感觉应该就是它了,谢谢

@SHocker-Yu multer确实是最好的选择,注意版本

回到顶部