Por que, ao copiar um URL diferente do inglês da barra de endereços, ele é codificado por URL e não como o texto que vejo (decodificado)?

2

Quando copio um link da barra de endereço que possui caracteres que precisam ser codificados normalmente, o link copiado conterá o texto codificado e não o decodificado (que é o que é visto visualmente).

Mas se eu editar (e reverter) algo no URL, como adicionar espaço e excluí-lo, o texto copiado será decodificado.

Por que esse é o comportamento? Alguma razão por trás disso, ou arbitrária?

Observação: Pelo que eu verifiquei - esse é o comportamento no Chrome e no Firefox, mas não no Edge (que copiará o texto decodificado).

Existe uma maneira de alterar o comportamento e sempre copiar o (bom) URL decodificado?
(Pelo menos para o Chrome)

Exemplo:

Navegando este endereço exibirá https://he.wikipedia.org/wiki/עוגייה na barra de endereço, mas quando copiado, copiará https://he.wikipedia.org/wiki/%D7%A2%D7%95%D7%92%D7%99%D7%99%D7%94 .
Editar algo antes de copiar alterará esse comportamento.

    
por arieljannai 22.05.2018 / 12:39

2 respostas

3

É um recurso deliberadamente implementado e muito útil dos navegadores da Web:

  • Ao emitir um comando de cópia para o URL inteiro, o navegador da Web o codifica nesse formulário específico. Você faz isso com um único clique na barra de endereços. A sugestão é que toda a barra de endereços está selecionada.
  • Se você primeiro optar por selecionar parte do URL (mesmo que acabe selecionando tudo), o navegador da web copia apenas o que você vê. Você faz isso com um único clique, seguido de outro clique simples (ou apenas um clique duplo) e, depois, selecionando o que deseja.

Há também uma parte que você pode não perceber: ao inserir https://he.wikipedia.org/wiki/עוגייה , o navegador da web a converte em https://he.wikipedia.org/wiki/%D7%A2%D7%95%D7%92%D7%99%D7%99%D7%94 em segundo plano antes de transmiti-la on-line.

Tudo isso tem um motivo. Vou poupar os detalhes e dar a você o resultado final: o URL codificado é o URL real. A URL "legal", como você diz, é apenas algo para simplificar a vida para você. Dessa forma, o último pode não funcionar em todos os aplicativos habilitados para a Web, enquanto o primeiro tem a garantia de funcionar.

Adendo: Talvez você nem consiga enviar corretamente o URL "legal" por e-mail, mensagens instantâneas ou SMS. Isso realmente depende se o serviço que você usa e seu destinatário usa suporte Unicode. (Gmail, Hotmail, Skype e Telegram estão bem. Não tenho certeza sobre o serviço SMS da Sprint, da Verizon ou da AT & T.)

    
por 22.05.2018 / 13:00
2

O formato codificado da URL é o formulário realmente usado pelos aplicativos que se comunicam na web. Ele é copiado do Firefox / Chrome dessa forma, por padrão, para garantir a usabilidade do URL copiado.

A razão pela qual o URL "muda" quando editado é quase certamente porque o navegador detectou diferenças na sequência de URL, o que potencialmente precisaria ser codificado novamente.

Is there a way to change the behavior and always copy the (nice) decoded URL (at least for Chrome)?

Firefox

Esta pergunta de superusuário tem uma resposta informando que você pode definir o valor de browser.urlbar.decodeURLsOnCopy to True sob about:config no Firefox 53+ para copiar automaticamente a forma codificada não URL de um URL. Isso funcionou para mim, embora eu não tenha testado nas versões mais recentes do Firefox.

Chrome

Não encontrei nenhuma configuração interna para o Chrome, mas encontrei uma recomendação em Stack Overflow para uma extensão do Chrome chamada COPY URL (atualizado em fevereiro de 2018 no momento em que este documento foi escrito) parecia copiar o URL de exemplo sem codificação, como anunciado.

Como uma pequena advertência em relação a essa extensão, embora os links incorporados nas páginas tivessem uma opção COPY URL no menu de clique com o botão direito, os URLs "barra de endereço" precisavam ser copiados clicando com o botão esquerdo no ícone COPY URL extension colocado na à direita da omnibox (perto do menu Configurações).

Se você está no Windows, também vale a pena notar que você pode colar um grupo de URLs codificados em URL no Notepad ++ , escolha Editar → Selecionar Tudo ( Ctrl + A ) e depois (supondo que você tenha os plugins padrão disponíveis) use Plugins → Ferramentas MIME → URL Decode para decodificar todas as URLs de uma vez.

por 22.05.2018 / 16:53