Koa2请求.身体是空的
Koa2 request.body is empty
——这个问题很老了,这里使用的库很可能已经过时了,解决方案仍然是正确的,但请使用最新的版本——
我正在与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());
当我尝试记录请求体时,它是一个空对象。另一方面,这个设置可以很好地与这个项目中的其他人一起工作。
我做错了什么?我是否使用了过时的依赖项?
将Content-type: application/json
标头添加到我的Postman请求中,解决了问题。
相关文章:
- ajax请求的顺序总是不同的
- Meteor如何接收HTTP请求
- 有没有一种方法可以防止img get请求使用css或js发生
- 从ajax请求中获取javascript对象
- JSONP请求返回结果,但也触发error_callback
- 在localhost Dev Box上测试JSONP请求的最佳方式
- Ajax请求文档就绪会导致jquery加载缓慢
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- 在openshift node js应用程序中获取请求
- 反应路由器弄乱了请求网址
- 在我的情况下,如何进行http请求
- 使用密码对话框Javascript请求帮助
- servlet中的请求对象,而不是从jsp接收参数值
- 否'访问控制允许来源'标头存在于IISNOde中请求的资源(AngularJS+NodeJs)上
- JavaScript代码未正确检查ajax请求
- node.js请求数据事件未在CORS ajax调用中触发
- 如何检测第三方广告服务器请求
- 在Rails中更新Div,而不更改更新请求后的视图
- Koa2请求.身体是空的