问题描述
使用 express() 作为路由,能够成功获取到post的请求参数,以下是部分代码展示
const app = express();
const bodyParser = require("body-parser");
//将模块注册上app实例上
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.post('/test', (req, res) => {
console.log(req.body);
res.send(req.body)
})
也就是说以上代码段能够成功获取到数据,
但是使用express.Router()却无法得到数据,
以下是无法获取到数据的代码展示
const app = express();
const router = express.Router()
const bodyParser = require("body-parser");
app.use(router)
//将模块注册上app实例上
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
router.post('/test', (req, res) => {
console.log(req.body);
res.send(req.body)
})
两个代码段的区别
一个直接使用了express(),一个使用了express.Router(),而
待解决的疑惑
使用express.Router()无法通过req.body获取到数据
如何使body-parser支持express.Router()