Abaixo está um cookie JavaScript que é gravado no computador do usuário por 12 meses.
Depois de definir o cookie em nosso domínio principal, como example.com
, se o usuário visitar um subdomínio como test.example.com
, precisamos continuar a identificar a atividade do usuário em nosso subdomínio de "teste".
Mas com o código atual, assim que eles saem www.example.com
e visitam test.example.com
, eles não são mais marcados como "HelloWorld".
Alguém poderia ajudar com meu código para permitir que o cookie seja lido em subdomínios?
<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>
javascript
cookies
Evan
fonte
fonte
hosts
arquivo e aliasing algo comomyserver.local
a127.0.0.1
. Então você pode usar isso para acessar seu servidor local (e ao definir cookies), e esperançosamente tudo deve funcionar.encodeURI()
& globaisdecodeURI()
para o nome e valor do cookie para lidar com qualquer conversão que precise ocorrer. iedocument.cookie = encodeURI(cookieName) +"=" + encodeURI(cookieValue)
.sub.example.com
não é possível definir um cookie para.example.com
usar javascriptVocê quer:
De acordo com a RFC 2109 , para ter um cookie disponível para todos os subdomínios, você deve colocar um
.
na frente de seu domínio.Definir o caminho = / fará com que o cookie esteja disponível em todo o domínio especificado (também conhecido como
.example.com
).fonte
.
na frente do domínio.Aqui está um exemplo prático:
Esta é uma solução genérica que obtém o domínio raiz do objeto de localização e define o cookie. A reversão ocorre porque você não sabe quantos subdomínios possui, se houver.
fonte
Você também pode usar o MDN JavaScript Cookie Framework e fazer:
fonte