目录

前端采用formdata的形式给node后端传输数据时碰到的问题

目录

前端采用formdata的形式给node后端传输数据时碰到的问题

1.前端给node后端发送formdata形式的数据时不需要手动设置响应头

https://i-blog.csdnimg.cn/blog_migrate/9e2e040921316943838122a6086e4d7c.png

向node后端发送的响应头真实格式为

https://i-blog.csdnimg.cn/blog_migrate/f0fc0360a5a6edec18bb9c4442313fd5.png#pic_center

如果自己设置响应头,如

https://i-blog.csdnimg.cn/blog_migrate/274de8b8b40b24f3d217fd4752bca887.png#pic_center

反而会导致响应头中的boundary丢失,会让node报错

https://i-blog.csdnimg.cn/blog_migrate/90d316acca5f16c557c00f67329db251.png#pic_center

但是如果我们在node后端直接用req.body接受数据的话,我们会发现接受的是一个空的对象

https://i-blog.csdnimg.cn/blog_migrate/4f42fdc48a737a0889b74c0f69524c69.png#pic_center https://i-blog.csdnimg.cn/blog_migrate/692bf3b855e94ea3734acec2e2a6fa60.png#pic_center

这个时候就需要导入formidable包来帮我们解决问题(可以上npm上看具体操作)

https://i-blog.csdnimg.cn/blog_migrate/e26f47ad7587a124a0ed2f8ce3180232.png#pic_center

然后我们就可以看到解析出来的数据了

https://i-blog.csdnimg.cn/blog_migrate/5c619168d22a5b590442c04f68f93bfc.png#pic_center

最后:千万不要忘记 在html页面的 form表单中忘记写input 的name属性