Koa2 request.body是空的

时间:2016-08-09 17:14:22

标签: javascript async-await ecmascript-6 koa2

我正在使用koa2和node6开发Web服务。我的koa依赖关系如下;

"koa": "^2.0.0-alpha.4",
"koa-async-body": "^1.0.4",
"koa-bodyparser": "^3.2.0",
"koa-logger": "^1.3.0",
"koa-router": "^7.0.1",

我的实施是这样的;



const apiPrefix = 'api',
      apiParent = 'auth',
      api = 'register',
      router = new Router();

router.prefix(`/${apiPrefix}/${apiParent}/${api}`);

router.post('/', async(context, next) => {
  try {
    console.log(context.request.body);
    context.body = await post(context.request.body);
    await next();
  } catch (err) {
    context.throw(500);
  }
});




在另一个类中,我将此路由绑定到app。我还将bodyParser添加到Koa中,如下所示;

const app = new Koa();

app.use(bodyParser());

当我尝试记录请求正文时,它是一个空对象。另一方面,此设置适用于此项目中的其他人。

我做错了什么?我使用过时的依赖吗?

1 个答案:

答案 0 :(得分:0)

在我的Postman请求中添加Content-type: application/json标头,解决了问题。