好的,在听音乐的时候添加一个路由到Node.js Express?

显然,添加路由来expression的典型例子如下所示:

var express = require('express'); var app = express(); app.get('/', function(req, res){ res.send('hello world'); }); app.listen(3000); 

显然,在大多数情况下,您知道在服务器开始侦听之前get路由存在。 但是如果你想在服务器正在监听时dynamic创build新的路由呢? 换句话说,我想要做如下的事情:

 var express = require('express'); var app = express(); app.listen(3000, function () { app.get('/', function(req, res){ res.send('hello world'); }); }); 

在实践中,路线的callback显然是从某个远程源dynamic拉动的。 我已经testing了上面的代码,一切似乎都正常工作,但是,我希望得到确认,在我继续使用这个模式之前调用app.listen之后,不会有任何创build路由的副作用。

注意:为了澄清,我不知道当我编写将创build快速服务器的主server.js文件(因此为什么我不能在调用listen之前创build路由),路由将会是什么。 路由列表(及其相应的处理程序/callback函数)将在服务器启动/运行时从数据库中提取。

根据TJ (Express的作者),可以在运行时添加路由。

主要的问题在于路由是按照添加的顺序进行评估的,所以在运行时添加的路由的优先级比之前添加的路由优先级低。 这可能也可能不重要,这取决于您的APIdevise。