实际上,在我提出这个问题之前,当我做任何像
这样的事情时 const app = express()
app
是整个快递模块的一个实例吗?这意味着,当我执行app.route
时,路由是Express方法权限还是NodeJS方法,因为Node也有.route
?无论如何......我只想仔细检查一下。
app.route('/games')
.post(postGame)
.get(getGames);
app.route('/games/:id');
.get(getGame)
.delete(deleteGame);
这是否与......相同......如果不是......为什么选择一个而不是另一个?
app.get('/games');
app.post('/games');
app.get('/games/:id');
app.delete('games/:id');
抱歉,我使用Express已经有一段时间了,但是找不到任何有关此特定问题的信息。谢谢!
答案 0 :(得分:1)
app是整个快递模块的一个实例吗?
是的,通过调用Express模块导出的顶级T& operator *() { return (*array)[currentPosition]; }
函数来创建app对象。这设置了默认的http标头,渲染选项....并包装http节点模块:
express()
您可以在source code here(真正可读)
中看到更多内容路由是Express方法权限还是NodeJS方法
路由是一个快速对象,nodeJs不提供像express这样的路由系统。
对于你的例子,是的,它完全相同。它们将处理程序函数存储在相同的app.listen = function listen() {
var server = http.createServer(this);
return server.listen.apply(server, arguments);
};