Come si usa
- Scegli «Codifica» o «Decodifica».
- Scegli la modalità — «Componente» per il valore di un singolo parametro, «URL completo» per mantenere la struttura dell'URL, oppure «Modulo (+ per gli spazi)» per i dati dei moduli HTML, dove gli spazi diventano +.
- Incolla il testo. Il risultato si aggiorna mentre scrivi.
- Se l'input è un URL, sotto vengono elencati protocollo, host, percorso e parametri della query.
Opzioni spiegate
- Componente
- Codifica tutto tranne lettere, cifre e - _ . ~ — usala per il valore di un parametro della query o per un segmento del percorso. Equivale a encodeURIComponent, più ! ' ( ) * che l'RFC 3986 riserva.
- URL completo
- Lascia invariati i caratteri che danno struttura all'URL (: / ? # & =) e codifica gli spazi e i caratteri non ASCII. Equivale a encodeURI di JavaScript.
- Modulo (+ per gli spazi)
- application/x-www-form-urlencoded, usato dai moduli HTML. Gli spazi diventano + invece di %20; in decodifica, + torna a essere uno spazio.
Esempi
| Input | Componente | URL completo | Modulo |
|---|---|---|---|
a b&c |
a%20b%26c |
a%20b&c |
a+b%26c |
café |
caf%C3%A9 |
caf%C3%A9 |
caf%C3%A9 |
https://x.com/?q=1 2 |
https%3A%2F%2Fx.com%2F%3Fq%3D1%202 |
https://x.com/?q=1%202 |
https%3A%2F%2Fx.com%2F%3Fq%3D1+2 |
Costruire un URL con parametri
Quando inserisci l’input dell’utente in una query string, codifica ogni valore separatamente:
const url = `https://example.com/search?q=${encodeURIComponent(query)}&page=2`;
Codificare l’intero URL alla fine lascerebbe & e = non codificati all’interno del valore e romperebbe i parametri.
Domande frequenti
Qual è la differenza tra %20 e +?
Entrambi possono rappresentare uno spazio, ma in punti diversi. %20 funziona ovunque in un URL; + indica uno spazio solo nella query string degli invii di moduli. Nel percorso, + è un semplice segno più.
Perché il mio testo risulta codificato due volte (%2520)?
È stato codificato due volte — il % di %20 è stato a sua volta codificato come %25. Decodificalo due volte e, nel tuo codice, assicurati che il valore venga codificato da un solo livello.
Quando usare encodeURI e quando encodeURIComponent?
Usa encodeURIComponent (modalità «Componente») per ogni valore di parametro che inserisci in un URL. Usa encodeURI («URL completo») solo per un URL intero che può contenere spazi o caratteri non ASCII.
Cosa significa «codifica percentuale non valida»?
Un % non è seguito da due cifre esadecimali, oppure i byte non formano UTF-8 valido. L'errore indica la posizione della prima sequenza errata.
Come vengono codificati i caratteri cinesi negli URL?
Ogni carattere viene convertito in byte UTF-8 e ogni byte viene scritto come %XX, quindi 中 diventa %E4%B8%AD.
Privacy
Questo strumento funziona interamente nel tuo browser. File e testi vengono elaborati sul tuo dispositivo e non vengono mai caricati sui nostri server.