我一直在获取自定义API的post正文时遇到问题。在我将主体解析器添加到我的package.json并运行npm install之后,我让它工作了很短时间,但现在我面临着request.body在我的应用程序中没有任何数据的问题。
在我的app.js中,我用以下几行代码注册了主体解析器。
app.use(bodyParser.json({ limit: '50mb' }));
app.use(bodyParser.urlencoded({ limit: '50mb', extended: true }));在位于api文件夹中的自定义API中,我有如下内容。
post: (request, response, next) => {
var body = request.body;
var context = request.azureMobile; }request.body每次都是空的。我已经用JSON和表单参数尝试过了。两者都不起作用。在本例中,我在本地运行,但当我将其推送到Azure时也无法工作。我尝试过新的项目,不同的API文件,以及stackoverflow中的其他建议。我不知所措。这么简单的事情不应该这么复杂。
发布于 2017-02-10 17:26:45
正如@Dale之前提到的,到今天为止,我们不需要安装正文解析器中间件来获取Azure移动应用程序中的自定义API的POST正文。我的猜测是,您在请求标头中遗漏了Content-Type。
以下是我的测试结果:
testBody.js
module.exports = {
"post": function (req, res, next) {
res.send('request body: ' + JSON.stringify(req.body));
}
}

https://stackoverflow.com/questions/42144358
复制相似问题