代码之家  ›  专栏  ›  技术社区  ›  Jordan

web worker或类似的东西可以处理窗口关闭事件吗?

  •  0
  • Jordan  · 技术社区  · 7 年前

    我正在做一个项目,让用户打开选项卡,每个选项卡都连接到PubNub频道并侦听事件。然后,这些打开的选项卡显示在管理选项卡中,以便用户可以看到所有连接的选项卡。目前,我们正在使用他们的存在来查看谁已连接,这也会触发显示加入、离开和超时消息的消息。

    问题归根结底是,如果用户只是关闭一个选项卡,我就无法向频道发送取消订阅消息,因此我必须等待PubNub调用该连接的超时,以将其从管理选项卡中删除。我已经把他们的心跳选项调整得更短了,但是当这些连接关闭时,如果能在第二秒时缩短很多,那真的很好。

    我的想法可能是一个网络工作者或类似的东西,可能可以产生简单的照顾发送一个取消订阅的消息,但似乎不可能,因为从我所了解的网络工作者变得无法使用,如果父网页,产生它关闭?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Community kfsone    4 年前

    PubNub和浏览器窗口/选项卡关闭事件

    WebWorker可能是一种选择,但它高度依赖于浏览器。如果您不担心浏览器的依赖性,那么您可以依靠浏览器对sendBeacon或onbeforeunload事件的支持来取消订阅。

    但您也可以启用 TCP_FIN