我正在做node.js的教程,课程教我如何使用node创建服务器。在下面的代码中,connect.bodyParser()行做了什么?
var app = connect()
.use(connect.bodyParser())
.use(connect.static('public'))
.use(function (req, res) {
if (req.url === '/process') {
res.end(req.body.name + ' would repeat ' + req.body.repeat + ' times.');
} else {
res.end("Invalid Request");
}
})
.listen(3000);
答案 0 :(得分:15)
它使用req.body
参数的值(以及其他内容)填充POST
。以下是文档和示例:http://expressjs.com/api.html#req.body
bodyParser是“Connect”的一部分,“Connect”是node.js的一组中间件。以下是Connect的真实文档和来源:http://www.senchalabs.org/connect/bodyParser.html
正如你所看到的,它只是一个薄的包装器,试图解码JSON,如果失败尝试决定URLEncoded,如果失败尝试解码多部分。