Выполнить API после закрытия браузера в Angular - PullRequest
0 голосов
/ 11 ноября 2019

Мне нужно выполнить API, если браузер закрылся, например, произошел сбой, закрытие браузера от пользователя, сбой ПК, ext ext.

Эта функция в моем компоненте Я нигде не вызываю эту функцию, думаю, она должна автоматически активироваться.

 @HostListener('window:beforeunload', ['$event'])
  beforeunloadHandler(event) {
    this.postService.unsetPost(this.postId).subscribe();
  }

Но не работает.

Ответы [ 2 ]

1 голос
/ 11 ноября 2019
 constructor() {
    window.onbeforeunload = ()=>{
      //call API here
    }
  }

В конструкторе компонентов напишите код выше ... Happy coding ...:)

0 голосов
/ 11 ноября 2019

По моему мнению, лучшей идеей является создание API сердцебиения, который отправляет запросы каждые N секунд, чтобы уведомить сервер о том, что сеанс активен и пользователь находится в сети. На сервере каждые M минут проверяйте, не было ли запросов сердцебиения более N секунд: если это так - выполняйте запрос API (то, что вы хотели выполнить при сбое).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...