我对Node和Express以及与使用node构建Web应用程序相关的其他层次都很陌生,request
和response
参数让我感到非常困惑。我的困惑在于这两个参数经常出现在一个函数中,但有时一个或两个参数没有被声明。此外,大部分时间会抛出另一个参数,比如'next'
或其他东西。例如,我有以下API路由器:
router.route('/teams')
// create a team at POST http://localhost:8080/api/teams
.post(function(req, res) {
var team = new Team();
team.name = req.body.name;
team.location = req.body.location;
// save the new team and check for errors
team.save(function(err) {
if (err) {
res.send(err);
};
res.json({ message: 'Team created!' });
});
})
// GET all the teams at GET http://localhost:8080/api/teams
.get(function(req, res) {
Team.find(function(err, teams){
if (err) {
res.send(err);
};
res.json(teams);
});
});
.post
和 .get
都调用一个带有 req
和 res
参数的函数,但是 req
从未被使用。如果它们没有被定义或不按完全不同的顺序使用或根本不使用,函数如何知道如何处理 req 或 res?或者如果我将它们命名为完全不同的名称呢?
请求和响应到底发生了什么?对不起我的无知。我已经阅读了文档,但还是没明白。
谢谢。