npm 包 @strong-roots-capital/event-source 使用教程

阅读时长 4 分钟读完

简介

@strong-roots-capital/event-source 是一个 Node.js 事件源(EventSource)的实现,它在 Node.js 环境中提供了 Server-Sent Events (SSE) 协议的客户端实现。它包含了一个 EventSource 类,可以方便地与服务器通信并接收来自服务器的事件消息。本教程将会介绍如何使用该包。

安装

npm 安装

注意:该包需要 Node.js 版本 >= 8.6.0

使用

-- -------------------- ---- -------
----- ----------- - ---------------------------------------------

----- -- - --- ------------------------------------

------------- -- -- -
  --------------------
--

-------------- --- -- -
  ------------------- --------- ---------
--

-------------- -- -- -
  --------------------
--

在上面的示例中,我们通过 EventSource 类创建了一个新的事件源实例 es,并连接到了一个 SSE 服务器。on 方法可以用来注册不同的事件回调,目前支持的事件是:

  • open: 当连接建立时触发。
  • event: 当收到事件消息时触发,回调函数将会得到一个事件对象,包含了 typedata 属性。
  • close: 当连接关闭时触发。

深入了解

连接选项

EventSource 类有一个选项对象可以传递给构造函数以配置一些连接参数:

上面的代码中,我们通过选项对象传递了一个名为 headers 的字段,它包含了一个 HTTP 请求头对象,用于在连接时将 Authorization 头信息发送给服务器。

目前支持的选项有:

  • headers: HTTP 请求头对象。
  • https: 是否使用 HTTPS 协议。
  • rejectUnauthorized: 是否禁用自签名证书的认证。默认为 true

事件注册与注销

使用 on 方法可以注册事件回调,使用 off 方法可以注销某个事件的回调。

重新连接机制

如果连接中断了,可以通过 reopen 方法尝试重新连接:

默认情况下,每次重连之间的间隔时间为 3 秒钟。如果你想自定义该时间,可以在选项中传递一个名为 retryInterval 的字段:

关闭连接

使用 close 方法可以关闭连接。

结尾

本教程介绍了 @strong-roots-capital/event-source 的使用方法,希望对大家有所帮助。如果在使用中有任何问题或建议,欢迎在 Github 上反馈。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671d530d0927023822a81

纠错
反馈