使用Koa2后台接收不到前端发送的表单数据问题

2019-04-07  本文已影响0人  美食家儿菜
接收不到数据可能是下面这些错误导致:
const koaBody  = require('koa-body')({multipart: true});
app.use(router.routes())
app.use(koaBody);

因为Node的执行顺序是按照书写代码的顺序的,所以需要将中间件的引用写在routes的前面才可以,正确写法

const koaBody  = require('koa-body')({multipart: true});
app.use(koaBody);
app.use(router.routes())

2.使用的是 koa-bodyparser解析,但是事实上,可能发送的表单数据的Content-Type是 mutilpart/form-data 但是koa-bodyparser是不支持这类数据的转化的

koa-bodyparserNotice中声明了.png
上传数据的Content-Type.png
解决方法:

使用koa-body中间件

const koaBody  = require('koa-body')({multipart: true});
app.use(koaBody);

启用enctype设置:

require('koa-body')({multipart: true});

就可以正常接收到数据了
我是在CNode.js找到的答案

上一篇 下一篇

猜你喜欢

热点阅读