显然,添加表达路线的典型示例如下所示:
var express = require('express');
var app = express();
app.get('/', function(req, res){
res.send('hello world');
});
app.listen(3000);
显然,在大多数情况下,您知道get
服务器开始侦听之前就存在该路由。但是,如果要在服务器侦听后动态创建新路由该怎么办?换句话说,我想要执行以下操作:
var express = require('express');
var app = express();
app.listen(3000, function () {
app.get('/', function(req, res){
res.send('hello world');
});
});
在实践中,显然会从某个远程源动态拉回路由的回调。我已经测试了上面的代码,并且一切似乎都正常运行,但是,我希望得到确认,在我继续使用此模式之前,在调用app.listen之后创建路由不会有任何意外的副作用。
注意:为澄清起见,当我编写server.js
将创建快速服务器的主文件时,我不知道路由将是什么(因此,为什么之前无法创建路由listen
被称为)。服务器启动/运行时,将从数据库中提取路由列表(及其相应的处理程序/回调函数)。
根据TJ(Express的作者)的说法,可以在运行时添加路由。
主要问题在于,将按添加顺序对路由进行评估,因此在运行时添加的路由的优先级将低于之前添加的路由。这可能会或可能不会很重要,具体取决于您的API设计。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句