Node.js NodeJS-在服务器创建后设置http服务器请求侦听器
在NodeJS中,通常会创建如下HTTP服务器:Node.js NodeJS-在服务器创建后设置http服务器请求侦听器,node.js,Node.js,在NodeJS中,通常会创建如下HTTP服务器: consthttp=require('http'); const requestListener=//创建监听器,例如使用express()创建监听器 const server=http.createServer(requestListener); 监听服务器(8080); 我的问题是,是否可以将请求侦听器的设置推迟到稍后的时间点(最好是在服务器已经在侦听之后) 我想要这样的东西: consthttp=require('http'); cons
consthttp=require('http');
const requestListener=//创建监听器,例如使用express()创建监听器
const server=http.createServer(requestListener);
监听服务器(8080);
我的问题是,是否可以将请求侦听器的设置推迟到稍后的时间点(最好是在服务器已经在侦听之后)
我想要这样的东西:
consthttp=require('http');
const server=http.createServer();
监听服务器(8080);
const requestListener=//创建监听器,例如使用express()创建监听器
setRequestListener(requestListener);
显然,我可以很容易地从HTTP server类继承创建这样的功能,但我很好奇NodeJS是否提供了一种内置的方法来实现这一点。这是Node.js文档中关于
HTTP.createServer()
函数requestListener
参数的说明:
requestListener
是一个自动添加到
请求
事件
进一步查看createServer()
的实际代码-实际上它就是使用此参数所做的全部工作
因此,您可以在创建服务器后手动添加侦听器,从而获得类似的行为
server.on('request', requestListener)
只要您在请求到来之前设置它,它就可以正常工作