CNode

form-data express-form 的问题

问答
SSHocker-Yu发布于10 年前最后回复10 年前5 回复3975 浏览0 收藏

是这样,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)

I
i5ting#1·10 年前

去查一下multipart/form data

D
DevinXian#2·10 年前

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

S
SHocker-Yu#3·10 年前
引用 i5ting去查一下multipart/form data

@i5ting 好的,感谢回复

S
SHocker-Yu#4·10 年前
引用 DevinXian应该是图片已经到Formdata了呀,应该是后端没有处理好,multer走你~

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

I
i5ting#5·10 年前
引用 SHocker-Yu@DevinXian 刚刚看了下 Multer,感觉应该就是它了,谢谢

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

参与回复
登录后即可参与回复。登录