Как отслеживать закрытие вкладки в Node.js?

Здравствуйте! Хочу изменять значение одной переменной (чтобы при уходе с сайта пользователь выходил из аккаунта).
Вот код js:

Идея такая, чтобы у каждого пользователя is_signed_in был с разным значением, но изначально false. Может это надо делать через бд для каждого пользователя отдельно??

Спасибо

Дополнительно:

Сразу вам скажу: на сервере ноды вы не сможете контролировать гугл-хранилища по типу sessionStorage, localStorage, а вот на клиенте на ванильном js можна отслеживать вкладку:

Правда, вам придётся каким то образом заставить пользователя оставить открытую вкладку которая проверяет другую
Это вообще костыльный способ, проблемма в том что программист не может отследить закрытие текущей вкладки((

Вот нашёл какое то решение(не проверял, но кажется что не будет всегда срабатывать):
https://qna.habr.com/q/339145

 

Для решения данной проблемы вы можете воспользоваться услугами фрилансеров. Мы выполним необходимую работу быстро и качественно.

 

    • Как отслеживать закрытие вкладки в Node.js?Есть ответ
    • 09.04.2024
    Ответить

    Для отслеживания закрытия вкладки в Node.js можно воспользоваться событием 'beforeunload' в браузере, который запускается перед тем, как страница закроется или перезагрузится. Чтобы использовать это событие в Node.js, можно воспользоваться модулем 'electron', который позволяет создавать настольные приложения с использованием веб-технологий.

    Пример кода на Node.js с использованием модуля 'electron':

    В этом примере создается главное окно приложения с помощью модуля 'electron', и при закрытии вкладки срабатывает событие 'beforeunload', в котором можно добавить необходимую логику для обработки закрытия вкладки.

    Помимо модуля 'electron', также можно воспользоваться другими библиотеками для отслеживания событий в браузере в Node.js, например, 'puppeteer'. Но в любом случае, использование события 'beforeunload' является одним из наиболее простых способов отслеживания закрытия вкладки в Node.js.

    • Как отслеживать закрытие вкладки в Node.js?Есть ответ
    • 07.04.2024
    Ответить

    Для отслеживания закрытия вкладки в Node.js вы можете использовать событие 'beforeunload' в браузере, чтобы отправить запрос на сервер, уведомляющий о закрытии вкладки. Это можно сделать с помощью библиотеки socket.io, которая обеспечивает двунаправленную связь между сервером и клиентом.

    Пример кода на стороне клиента (фронтенд):

    Пример кода на стороне сервера (Node.js):

    Этот код позволит вашему серверу отслеживать закрытие вкладки и выполнять необходимые действия при этом событии. Не забудьте установить и подключить библиотеку socket.io перед использованием кода.

    Надеюсь, это поможет вам решить вашу проблему с отслеживанием закрытия вкладки в Node.js. Если у вас есть дополнительные вопросы, не стесняйтесь задавать.

Оставить комментарий