tooliv

Codificacao URL

Codificar e decodificar URL

Entrada

Resultado

Codificacao URL: por que certos caracteres precisam ser transformados

As URLs so aceitam um conjunto limitado de caracteres: letras, numeros e poucos simbolos. Quando aparece um espaco, um acento ou um caractere especial, ele precisa ser convertido para o formato %XX -- o que se chama de codificacao percentual. Sem isso, o servidor pode nao entender a requisicao.

Por que a codificacao URL e indispensavel

URLs seguem o padrao RFC 3986 e so aceitam caracteres alfanumericos mais alguns caracteres especiais (-._~). Um espaco, um c cedilha ou um acento numa URL, e o servidor pode falhar na interpretacao. Os caracteres & e = funcionam como separadores de parametros de consulta: se aparecem nos dados em si, precisam ser codificados para evitar ambiguidade. A codificacao URL e, simplesmente, o mecanismo basico que permite transmitir dados de forma confiavel na web.

Os caracteres que sao codificados com mais frequencia

Espacos viram %20 (ou + em alguns contextos), o & passa a ser %26, o = vira %3D e o ? se transforma em %3F. Os caracteres acentuados do portugues sao codificados em UTF-8, gerando varias sequencias %XX por caractere. A barra (/) serve como separador de caminho e so deve ser codificada quando faz parte de um valor de parametro. Conhecer essas regras evita os bugs tipicos de URLs mal formadas.

Boas praticas para desenvolvedores

A regra de ouro: codifique apenas os valores dos parametros de consulta, nunca a estrutura da URL em si. Em JavaScript, use encodeURIComponent() para valores e encodeURI() para URLs completas. Em Python, e urllib.parse.quote(). A codificacao dupla -- quando voce codifica uma string que ja esta codificada -- e um erro classico: voce acaba com %2520 no lugar de %20. Lembre-se sempre de codificar os valores de parametros nas suas chamadas de API, porque eles podem conter caracteres especiais inesperados.

자주 묻는 질문

Por que a codificacao URL e necessaria?

Caracteres especiais em URLs (espacos, &, =, etc.) precisam ser codificados para interpretacao correta.

O que e codificacao percentual?

Caracteres sao substituidos por %XX onde XX e o valor hexadecimal.

Devo codificar toda a URL?

Nao, apenas codifique valores de parametros, nao a estrutura da URL.

Ferramentas relacionadas