como bloquear um cookie específico de um site específico [duplicado]

2

Eu comecei a ficar bastante ativo no StackOverflow recentemente, então eu tenho aberto muitos links para o link , mas desde que eu precisei redimensionar os painéis regularmente para ver o código específico postado na forma como o código foi destinado, geralmente acabo com algumas configurações bastante estranhas para os painéis. Como eu preferiria não redimensionar as janelas para uma configuração mais normal todas as vezes, gostaria de bloquear o cookie window_sizes do jsfiddle, mas quando tentei pesquisar sobre como bloquear um único cookie de um site específico, não encontrar nada.

Eu também tentei verificar as configurações do Chrome e do Firefox, mas também não tenho a opção de bloquear um cookie específico, apenas para bloquear determinados domínios.

Estou pensando principalmente em como bloquear esse cookie específico no Chrome (que é meu navegador padrão), mas acho que também pode ser útil para qualquer outra pessoa com o mesmo problema incluir também os métodos para outros navegadores também, se isso for possível.

    
por joeytje50 30.01.2014 / 19:56

1 resposta

2

Conquista desbloqueada - compensação seletiva de cookies

Por padrão, os navegadores não permitem um controle tão refinado dos cookies: normalmente, você pode bloquear todos os cookies de terceiros ou bloquear todos os cookies de um determinado domínio. Bloquear tudo não é uma opção, pois você acabará facilmente quebrando a funcionalidade básica (por exemplo, login de usuário). Nesse caso, você precisa recorrer a scripts de usuários ou extensões.

Firefox - solução userscript

Este é o código que eu criei. Testado com o Firefox 26.0, Greasemonkey 1.14.

// ==UserScript==
// @name        JSFiddlePanelReset
// @namespace   net.jsfiddle.userscripts
// @description Resets panels back to their default size whenever the site is loaded.
// @version     1.0
// @icon        http://jsfiddle.net/favicon.png
// @grant       none
// @include     http://jsfiddle.net/*
// @match       http://jsfiddle.net/*
// ==/UserScript==

(function (){

    // set the domain
    var domain = ".jsfiddle.net";

    // get a date in the past
    var expireDate = new Date(-1).toUTCString();

    // clear the size-related cookie and force it to expire
    document.cookie = "window_sizes=; domain=" + domain + "; path=/; expires=" + expireDate;

})();

Observações

Como apontado por @Brock Adams em outra pergunta , há grandes limitações sobre o que o Greasemonkey pode excluir:

  • The cookies you want to delete are on the current page's domain.
  • They are not "Secure cookies".
  • The cookie path (which cannot be detected by Greasemonkey) is the default path, /.
  • No cookies are set by javascript, after the page loads.
  • The thing tracking you really is a "cookie". Many websites use a variety of other techniques, including LSO's, local storage, etc.

Referências

Navegadores baseados em cromo - extensão

Embora o userscript acima limpe o cookie especificado, os painéis JSFiddle não são redefinidos por qualquer motivo. Como esse não é o tipo de navegador que uso, não investi muito tempo tentando entender o motivo; talvez alguém possa esclarecer isso. Como alternativa, você pode usar a extensão Editar este cookie .

Editar este cookie

Entre outras coisas, essa extensão específica pode bloquear cookies específicos. Você pode filtrá-los por domínio, nome e valor.

Referências

  • É possível bloquear um cookie em um domínio
por 01.02.2014 / 17:18