我有一个简单的Express服务器,它使用body-parser
模块来访问POST参数。该应用程序如下所示:
'use strict';
const express = require('express');
const app = express();
const apiRouter = require('./api/routes.js');
// Set our port for the server application
const port = process.env.PORT || 8080;
// Register the routes for the /api prefix
app.use('/api', apiRouter);
// Start server
app.listen(port);
console.log('The server is running on port ' + port);
'use strict';
const express = require('express');
const router = express.Router();
const bodyParser = require('body-parser');
// Configure app to use bodyParser(). This will let us get the data from a POST
router.use(bodyParser.urlencoded({ extended: true }));
router.use(bodyParser.json());
// START ROUTES
router.post('/devices', (req, res) => {
console.log(req.body); // Returns {}
res.json(req.body);
});
module.exports = router;
问题是req.body
对象为空(始终返回空对象{}
)。由于我已经加载了body-parser
中间件,我不知道还能尝试什么。我希望你有任何建议。
答案 0 :(得分:0)
我使用应用邮递员进行测试。它似乎将POST数据发送为form-data
而不是x-www-form-urlencoded
。更改此设置后,数据显示出来。