Como os sites se lembram de suas preferências (ou desejo por nada) e o que dizer do assunto delicado dos próprios cookies? A postagem de hoje com perguntas e respostas do superusuário busca esclarecer como os cookies funcionam e as informações que eles armazenam para um leitor confuso.
A sessão de perguntas e respostas de hoje chega até nós como cortesia do SuperUser - uma subdivisão do Stack Exchange, um grupo de sites de perguntas e respostas voltado para a comunidade
Foto cortesia de Pedro Vezini (Flickr) .
A questão
O leitor de superusuário Ruud Lenders deseja saber mais sobre como funcionam as preferências e os cookies de sites:
Um pop-up exibido em um site que visitei e me perguntou se eu permitiria que o site armazenasse preferências em cookies. Por acidente, escolhi não. Atualizar a página não traz o pop-up de volta. Existe uma maneira de obter esse tipo de pop-up de volta sem limpar o histórico e os cookies?
Isso também me fez pensar. Como um site pode se lembrar se tem permissão para armazenar cookies? Armazenando em um cookie?
Como um site se lembra de suas preferências gerais e sobre suas escolhas em relação aos cookies em geral?
A resposta
O contribuidor SuperUser bvukelic tem a resposta para nós:
Eles perguntaram se você gostaria de preferências de loja em cookies, não se você quiser que eles definam cookies em geral. Portanto, se eu estivesse escrevendo suporte para esse recurso, definiria um cookie separado ( nopref ) e verifique se o usuário possui ou não esse cookie. Há uma boa chance de você encontrar esse tipo de cookie para esse site, que você pode limpar sem remover outros cookies ou histórico.
Inspecionando cookies definidos para uma página específica
No Firefox, você pode listar os cookies de uma página da web específica clicando com o botão direito em uma parte em branco da página e selecionando o Ver informações da página opção. Você encontrará um Ver Cookies botão no Guia de Segurança . No Chrome, você tem o mesmo Ver informações da página opção que abre uma caixa de diálogo que fica suspensa na barra de endereço. Um link próximo ao topo o levará a uma lista de cookies. Presumo que recursos semelhantes possam ser encontrados em outros navegadores.
Descobrindo se um site define um cookie
Aqui está uma maneira de descobrir o que o site está fazendo. Visite o site em Modo incógnito . Abra o Ferramentas de desenvolvimento e mude para o Guia Rede . Em seguida, verifique qual atividade está ocorrendo em segundo plano conforme você recusa que o site o rastreie com cookies. Especificamente, procure cabeçalhos de resposta e veja se há algum Set-Cookie cabeçalhos lá. Em seguida, tente excluir os cookies mencionados no cabeçalho para ver se isso faz alguma diferença.
Sobre localStorage
Já que outro autor mencionou localStorage (banco de dados no navegador), comentarei sobre isso também. Acho que será muito raro um site usar localStorage para essa finalidade, pois os dados localStorage não podem ser acessados pelo servidor, a menos que haja um código JavaScript que envie os dados de volta ao servidor. Se você deseja verificar o conteúdo de localStorage, a maneira mais rápida é abrir o Ferramentas de desenvolvimento no seu navegador, vá para o (JavaScript) Guia do console e digite localStorage. Isso deve fornecer uma saída semelhante a:
- Armazenamento { someKey: “value”, length: 1 }
O someKey identifica o valor definido pelo JavaScript na página da web em que você está. Se você acredita que someKey faz algo relevante, você pode tentar removê-lo executando o seguinte:
- localstorage.removeItem (‘someKey’);
Isso remove os dados em someKey do localStorage e recarregar a página da web pode restaurá-la para as configurações de fábrica. Se não tiver certeza de que a chave específica foi definida pela funcionalidade de notificação de cookie, você pode abrir a página da web em Modo incógnito e liste o conteúdo de localStorage antes de interagir com a página da web.
Novamente, eu duvido que muitos sites usem localStorage para essa finalidade.
Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui .