[英]Node.js _http_server.js' Server function's first line confusion
[英]_http_server.js - no request('events') yet .emit() && .on() how?
GitHub上/nodejs/node/blob/master/lib/_http_server.js上的_http_server.js使用.emit()方法14次,加上使用.on()方法11次。
我很困惑,因为我相信此方法来自Node.js中的request('events')。 我在整个文件中搜索了这样的内容,并且该行已从第113行注释到第130行。对于使用.emit()和.on()方法,我找不到其他方法。
谁能解释在没有request('events')的情况下如何同时使用.emit()和.on()?
_http_server.js通过继承使用EventEmitter
(从require('events')
)。
ServerResponse
继承自OutgoingMessage
,后者继承自Stream
, Stream
又继承自EventEmitter
。 Server
本身从net.Server
继承 ,后者从EventEmitter
继承 。 这就是_http_server.js能够使用EventEmitter
方法的原因,即使您在该文件中看不到require('events')
:它所依赖的类最终还是取决于EventEmitter
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.