【发布时间】:2014-06-04 16:23:46
【问题描述】:
如何将路由处理程序添加到已经存在并已实例化的 http 服务器?
我发现的所有路由器(包括 express)似乎都要求将它们传递到 http.createServer() 方法中。
以快递为例:
var server = http.createServer(app);
我的主要标准:
- 以sockjs 之类的方式将路由添加到现有服务器。
- 不知道是否已经使用了任何路由器(如果有的话)
- 不要依赖现有的路由器“app”对象来添加路由(使用路由库创建一个新的就可以了)。
示例:将服务器传递给 SockJS
var http_server = http.createServer(); // agnostic
sockjs_server.installHandlers(http_server, options);
http_server.listen(...);
在 sockjs 源代码中完成的方式似乎很神秘......但我认为它涉及遍历现有处理程序并使用自定义路由器/处理程序覆盖它们。
非常感谢您的帮助!
【问题讨论】:
标签: javascript node.js express routes