Angular 7 - как отправить HTTP-вызов перед закрытием браузера - PullRequest
0 голосов
/ 03 июля 2019

Я пытаюсь отправить запрос POST HTTP перед закрытием браузера.

По сути, я пытаюсь определить действие пользователя, что они закрыли страницу, но вызов не выходит из приложения до его закрытия.

У меня сложилось впечатление, что это невозможно при обычном HTTP-запросе, поскольку вы должны подписаться на HTTP-запрос.

Я пробовал следующее решение, найденное здесь: Angular 2 - выполнение кода при закрытии окна

Это не сработает для меня, так как я не делаю простогоПОЛУЧИТЬ.Вот что у меня так далеко.

component.ts

@HostListener('window:beforeunload', ['$event'])
  beforeunloadHandler($event) {
    this.eventsService.sendEvent(this.form.value).subscribe(() => {
      console.log("Made it");
    });
  }

service.ts

sendEvent(userData): Observable<any> {
    return this.http.post<any>(this.url, userData,
      {
        headers: new HttpHeaders({
          "Content-Type": "application/json"
        })
      })
  }

Есть ли способ использовать XMLHttpRequest () как решение выше говорится?Какие еще варианты есть для такого решения?

Любая помощь приветствуется.

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