Posso desativar o Preenchimento automático do Google Chrome apenas para host local?

21

Sou desenvolvedor e é muito chato ter o Chrome sugerindo todas as minhas informações de endereço pessoal nos sites de formulários que estou desenvolvendo para rodar em minha máquina local. É possível desativar o Preenchimento automático no host local, domínio ou endereço IP? Não estou vendo nada nas configurações avançadas.

Gromer
fonte
Embora "como desenvolvedor", você não deseja a mesma experiência no servidor de teste local que gostaria no site ativo?
MrWhite
4
Se eu quiser testar coisas específicas do navegador, como o Preenchimento automático, eu o faria contra um servidor de teste.
Gromer

Respostas:

8

Recentemente, respondi a outra pergunta com o mesmo requisito de personalizar recursos do Chrome (e também inspirada no @Paul ).

NOTA: Esta solução permite bloquear um endereço IP específico ou uma lista de IPs, sem precisar carregar nenhuma biblioteca adicional e nenhum script adicional no seu projeto. De fato, muitas vezes você pode ter bloqueado todos os recursos Javascript, mas o controle "noautofill" segue em operação, evitando colisões com outras bibliotecas, permitindo também um reconhecimento real da taxa de consumo e do tempo de renderização, o que pode se traduzir em economia de tempo no dia de depuração hoje, em diferentes projetos da web.

Crie uma extensão do Chrome que use o "host do filtro de correspondência" da API do Chrome e filtre o seu IP hostou namehost. Em seguida, defina o atributo autocompletecomo off para todas as tags "input" e "form".

Prosseguimos com estas etapas:

  • Crie uma nova pasta chamada ex. noautofill

  • Crie em nossa nova pasta, um novo arquivo chamado manifest.json e adicione este código dentro:


{
  "name": "No Autofill",
  "version": "1.0",
  "manifest_version": 2,
  "description": "No Autofill.",  
  "content_scripts": [ {
      "all_frames": true,
      "exclude_globs": [  ],
      "include_globs": [ "*" ],  
      "js": [ "script.js" ],      
      "matches": [   
                   "http://192.168.1.100/",
                   "http://127.0.0.1/",
                   "http://10.0.1.100/",
                   "http://localhost/",
                   "http://wp.local/",
                   "http://192.168.1.100/*",
                   "http://127.0.0.1/*",
                   "http://10.0.1.100/*",
                   "http://localhost/*",
                   "http://wp.local/*"                   
                    ],
      "run_at": "document_start"
   } ],
  "permissions": [ "tabs", "http://*/", "https://*/", "https://*/*", "http://*/*", "contextMenus" ]

}
  • Em nossa nova pasta, crie um novo arquivo chamado script.js e adicione este código dentro de:


(function(){    
    chrome.extension.sendRequest({
        autofill:'off'
    },function(){       
        var inputnodes = document.getElementsByTagName('input');    
        for(var i=0;i<inputnodes.length;i++){       
            inputnodes[i].setAttribute('autocomplete','off');
        }       
        var formnodes = document.getElementsByTagName("form");    
        for(var i=0;i<formnodes.length;i++){                    
            formnodes[i].setAttribute('autocomplete','off');
        }       
  });
})();
  • Vamos ao menu do Chrome »Configurações» Extensões

  • Agora clicamos no botão "Carregar extensões descompactadas"

  • Finalmente, marcamos nossa pasta e clicamos no botão Abrir.

Este é o resultado:

noautofill

Esse sistema é muito simples e você pode personalizar o arquivo script.js com seu próprio código de controle. No futuro, você poderá adicionar outros scripts, CSS, páginas de configuração, etc. Lembre-se de que toda vez que fizer alterações no arquivo script.js, deverá recarregar o plug-in CtrlR.

Além disso, você pode obter um guia mais detalhado sobre como criar extensões do Chrome .

RTOSkit
fonte
Por favor, não exagere na formatação. Lembre-se, às vezes menos é mais. Editei sua postagem para remover negrito, itálico e aspas desnecessárias.
slhck
11
Nenhum problema, apenas uma dica para o futuro :)
slhck
11
Eu gosto mais desta solução, obrigado! Não é um grande fã de ter que gerenciar vários perfis, o que funcionaria, mas não a solução que estou procurando. Isso permite que as coisas sejam mais simplificadas para mim. Obrigado a todos!
Gromer 07/01
11
Ótima solução! Eu acho que você pode ter perdido um curinga no segundo 10.0.1.100 embora?
Paul
uau sim! que olhar atento :)
RTOSkit
9

As outras respostas sobre o uso de um segundo perfil ou a instalação de uma segunda versão do Chrome devem funcionar bem. Estou adotando um ângulo diferente apenas para fornecer outra opção, não porque acho que essa é a melhor maneira de fazê-lo.


Ao desenvolver um site localmente, basta incluir a biblioteca jQuery e um script jQuery com o seguinte código:

$(document).ready(function() {
    $(":input").attr("autocomplete","off");
});

Isso desativa o preenchimento automático para todas as entradas na página da web. Utilizado em conjunto com um arquivo de inclusão do servidor (na cabeça) significa que seria muito fácil adicionar isso durante o teste e removê-lo para produção em um site inteiro.

Paulo
fonte
11
1+ Você me inspirou, para minha segunda solução.
RTOSkit
11
Funciona muito bem, eu acrescentaria que você poderia colocar esse código no lado do servidor se uma instrução que verifica uma configuração para dizer em que ambiente o site está sendo executado. No meu caso para MVC mina parece com isso@if (Web.Core.Common.Settings.Environment == Web.Core.Common.Environments.Local) { @Html.Raw("$(':input').attr('autocomplete','off');"); }
guanome
2

Infelizmente, o Google Chrome não possui uma opção de filtragem por site para preenchimento automático.

Uma alternativa é usar a extensão Lastpass Chrome , onde você pode decidir qual campo deve ser lembrado por site.

A outra alternativa é criar um novo perfil de usuário nas configurações do Chrome -> Usuários -> Adicionar novo usuário ou instalar versões diferentes do chrome (Chrome Estável / Beta / Dev, Chrome Canary ou Chromium ).

hanxue
fonte
2

Uma solução (para fins de teste) seria adicionar novo perfil de uso sem o preenchimento automático.

Use esse perfil durante o teste para evitar o preenchimento automático.

harrymc
fonte
Não é a melhor solução - você ainda deseja usar a Internet normalmente em todos os outros sites.
user1068446
1

Poderia atingir seu objetivo com a extensão de preenchimento automático .

Eu acho que tem todos os recursos que você está procurando.

preenchimento automático

RTOSkit
fonte