记 node 中 http.request.on() 方法来源

node 官方文档通篇没有明确说明 on 方法的来源,但是很多地方又都在使用,抱着刨根究底的心态查资料得知:
在 Node.js 中,所有的流都是继承自 stream.Readable 类或它的子类的。因此,所有的流都有一个on()方法,可以用于注册事件监听器。

在使用流时,通常可以使用 on() 方法来监听流的各种事件,如数据可读事件、数据读取完毕事件、错误事件等。这个方法在 Node.js 的核心模块中实现,是一个通用的方法,可以用于所有流对象。

在 Node.js 中,request.on()方法是用于监听 HTTP 请求事件的。它是通过 Node.js 内置的 http 模块中的 IncomingMessage 类实现的,IncomingMessage 类是一个流类,它继承自 Node.js 内置的 stream.Readable 类。

stream.Readable 类是一个流类,支持事件监听,因此它有一个on方法,可以用于注册事件监听器。通过继承,IncomingMessage 类也继承了这个方法,因此我们可以使用 request.on() 的方式来监听 HTTP 请求中的事件。

posted @ 2023-02-12 19:07  脉望  阅读(463)  评论(0编辑  收藏  举报