Tengo 2 aplicaciones en las que se puede acceder a App2 cuando hacemos clic en un enlace en App1. Cada vez que se hace clic en este enlace, se abre una nueva pestaña del navegador que contiene App2.
Ahora tengo un requisito en el que al cerrar la sesión de App1, todas las instancias (pestañas) abiertas para App2 deben cerrarse.
Intenté capturar objetos de ventana de App2. Y pensé en usar winObj.close() para cerrar cada uno de ellos con un bucle. Pero el problema es que ¿cómo y dónde puedo capturar objetos de ventana? (Necesito obtener esos objetos cuando el usuario hace clic en cerrar sesión).
Probé en cookies y localStorage usando localStorage.setItem('app2Window', JSON.stringify(window)) pero JSON.stringify(window) me da el siguiente error:
TypeError no capturado: Conversión de estructura circular a JSON -> comenzando en el objeto con el constructor 'Ventana' --- la propiedad 'ventana' cierra el círculo en JSON.stringify () en: 1:41
Cualquier ayuda/indicadores hacia este problema será apreciada.
Parece que BroadcastChannel es lo que estás buscando: