Solución:
Así es como lo uso en todos los dominios …
- Use un iframe de su dominio principal, por ejemplo, parent.com
- Luego, en cada dominio child.com, simplemente haga un postMessage a su iframe parent.com
- Todo lo que necesita hacer es configurar un protocolo de cómo interpretar sus mensajes postMessage para hablar con el iframe parent.com.
Espero que ayude 🙂
Si está utilizando la solución iframe y postMessage solo para este problema en particular, creo que podría ser menos trabajo (tanto en código como en cálculo) simplemente almacene los datos en una cookie sin subdominio y, si aún no está en localStorage en carga, tómelos de la cookie.
Pros:
- No necesita la configuración adicional de iframe y postMessage.
Contras:
- Hará que los datos estén disponibles en todos los subdominios (no solo en www), por lo que si no confía en todos los subdominios, es posible que no funcione para usted.
- Enviará los datos al servidor en cada solicitud. No es genial, pero dependiendo de su escenario, tal vez aún menos trabajo que la solución iframe / postMessage.
- Si está haciendo esto, ¿por qué no usar las cookies directamente? Depende de tu contexto.
- Tamaño máximo de cookie de 4K, total en todas las cookies del dominio (gracias a Blake por señalar esto en los comentarios)
Sin embargo, estoy de acuerdo con otros comentaristas, esto parece que debería ser una opción especificable para localStorage, por lo que no se requieren soluciones alternativas.
Sugiero hacer que site.com redireccione a www.site.com tanto para mantener la coherencia como para evitar problemas como este.
Además, considere usar una solución de navegador cruzado como PersistJS que puede usar el almacenamiento nativo de cada navegador.