A continuación se muestra una cookie de JavaScript que se escribe en la computadora del usuario durante 12 meses.Crear una cookie de JavaScript en un dominio y leerla en subdominios
Después de que establezcamos la cookie en nuestro dominio principal, como example.com
, si el usuario visita un subdominio como test.example.com
, debemos seguir identificando la actividad del usuario en nuestro subdominio de "prueba".
Pero con el código actual, tan pronto como salen de www.example.com
y visitan test.example.com
, ya no se marcan como "HelloWorld".
¿Alguien podría ayudar con mi código para permitir que la cookie se lea entre subdominios?
<script type="text/javascript">
var cookieName = 'HelloWorld';
var cookieValue = 'HelloWorld';
var myDate = new Date();
myDate.setMonth(myDate.getMonth() + 12);
document.cookie = cookieName +"=" + cookieValue + ";expires=" + myDate;
</script>
Estoy tratando de hacer esto en localhost y no puedo cambiar la ruta – Enve
@Enve - Los navegadores tratan las cookies de localhost de una manera diferente a otras cookies. O más bien, tratan todas las cookies de una manera que dificulta el trabajo con _localhost_. Por ejemplo, ver http://stackoverflow.com/questions/1134290/cookies-on-localhost-with-explicit-domain. Sugiero editar su archivo 'hosts' y aliasing algo como' myserver.local' a '127.0.0.1'. Luego puede usar eso para acceder a su servidor local (y al configurar las cookies), y con suerte todo debería funcionar. – aroth
Todos los valores de cookie que cree y recupere deben ser valores de cadena. Las cadenas pueden contener caracteres que pueden alterar el almacenamiento local al intentar recuperarlos. Una cosa que sugeriría es utilizar los métodos globales 'encodeURI()' y 'decodeURI()' para el nombre y valor de la cookie para manejar cualquier conversión que deba tener lugar. es decir 'document.cookie = encodeURI (cookieName) +" = "+ encodeURI (cookieValue)'. –