【问题标题】:Call API on tab close/browser close in Angular在 Angular 中的选项卡关闭/浏览器关闭上调用 API
【发布时间】:2022-11-04 19:59:25
【问题描述】:

我正在尝试在选项卡或浏览器关闭后立即调用 API。为此,我正在使用'onBeforeUnload'事件。 目前,只要浏览器关闭,API 就不会一直被调用。它在 10 次中工作 2-3 次。 有没有一种方法可以确保每次都调用 API。

【问题讨论】:

  • 为什么你认为你需要这个?

标签: angular browser onbeforeunload sendbeacon


【解决方案1】:

有没有一种方法可以确保每次都调用 API。

不会。如果用户终止浏览器进程,或者机器电源被切断,或者他们在没有 Internet 连接时关闭浏览器怎么办?

如果必须,您可以执行event.preventDefault(),然后从代码中关闭窗口,但您不应该也不应该这样做。

【讨论】:

    【解决方案2】:

    您能否添加有关您的要求的更多详细信息,因为我不建议您使用这种方法。由于使用起来非常不安全,因此您无法确保它始终运行,因为涉及许多场景,例如进程终止、本地电脑断电、互联网断开等等。

    如果您只想检测用户是否还活着或在您的应用程序上工作,您可以创建一种 Heartbeat 类型的 api,它会告诉系统用户处于活动状态,并且当服务器在定义的时间内没有收到心跳时,您可以将其视为关闭事件.

    如果您可以发布您想要实现的目标,那么人们肯定会有所帮助。

    【讨论】:

      猜你喜欢
      • 2021-07-26
      • 1970-01-01
      • 2015-12-27
      • 1970-01-01
      • 1970-01-01
      • 2013-08-01
      • 2013-11-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多