DevToolPal
IT

Codifica e decodifica URL

Applica la percent-encoding al testo per usarlo in URL e query string, o decodifica le sequenze %XX in testo leggibile.

Eseguito in locale, mai caricato

Opzioni

Modalità
Codifica

Input

0 caratteri · 0 B

Output

0 caratteri · 0 B

Cosa fa

La codifica URL, detta anche percent-encoding, sostituisce i caratteri non consentiti o con un significato speciale in un URL con un % seguito da due cifre esadecimali. Uno spazio diventa %20, una e commerciale diventa %26, e il testo non ASCII come 中文 viene prima convertito in byte UTF-8 e poi ogni byte viene scritto come %XX.

Questo strumento codifica il testo così puoi inserirlo in sicurezza in una query string, in un segmento di percorso o in una richiesta API, e decodifica in testo leggibile le stringhe percent-encoded copiate da log, barre degli indirizzi del browser o tracce HTTP.

Come si usa

  1. Incolla un testo o un URL nella casella Input oppure fai clic su Esempio.
  2. Scegli Codifica o Decodifica.
  3. In codifica, scegli Componente per codificare un singolo valore (ad esempio un termine di ricerca) oppure URL completo per lasciare intatti :, /, ?, & e =.
  4. Attiva Spazio come + per i dati dei form HTML e Ogni riga separatamente per elaborare un elenco di valori in un colpo solo.
  5. Copia o scarica il risultato. Se la decodifica fallisce, l’errore indica la posizione della sequenza di escape non valida.

Esempio

Codificando il termine di ricerca hello world & more come componente si ottiene:

hello%20world%20%26%20more

Decodificando q=%E4%BD%A0%E5%A5%BD si ottiene q=你好.

Quando usare cosa

  • Per costruire a mano una query string: codifica ogni valore come componente, poi uniscili con & e =.
  • Per sistemare un link completo che contiene spazi o caratteri cinesi: usa URL completo, così la struttura del link viene preservata.
  • Per leggere i log del server: decodifica con Spazio come + attivo, perché molti server registrano i dati dei form in quel formato.

Domande frequenti

› Qual è la differenza tra "Componente" e "URL completo"?

Componente codifica ogni carattere riservato, compresi / ? & = e #, quindi il risultato è sicuro all'interno di un singolo parametro di query o segmento di percorso. Corrisponde a encodeURIComponent di JavaScript. URL completo mantiene quei caratteri, così l'indirizzo funziona ancora come link, e corrisponde a encodeURI.

› Gli spazi devono diventare %20 o +?

Usa %20 per i percorsi e per la maggior parte delle API. Usa + solo per i dati dei form HTML (application/x-www-form-urlencoded), cioè ciò che i browser inviano quando si invia un form. In quel caso attiva "Spazio come +".

› Perché in decodifica ottengo "not valid UTF-8"?

I byte %XX non formano un carattere UTF-8 completo, di solito perché il testo è stato tagliato a metà di un carattere multibyte oppure è stato codificato con un charset legacy come GBK o Latin-1.

› I miei dati vengono inviati a un server?

No. Codifica e decodifica avvengono interamente nel tuo browser.