// Codifica URL
URL Encoder / Decoder
Codifica o decodifica componenti URL usando il percent-encoding. Utile per query string e dati modulo.
Text
Encoded
URL Encoder / Decoder esempi.
// Decodifica URL
Domande frequenti.
Cos'è il percent-encoding?
È un meccanismo per codificare caratteri nelle URL usando % seguito da due cifre esadecimali.
Come funziona la codifica URL
La codifica URL, nota anche come percent-encoding, sostituisce i caratteri non sicuri con una sequenza che inizia con % seguito dalla rappresentazione esadecimale del valore ASCII del carattere. Ad esempio, lo spazio diventa %20 e l’@ diventa %40.
I caratteri riservati come /, ?, #, &, = e + vengono codificati quando non hanno il loro significato speciale in un URL. I caratteri non riservati come lettere, numeri e - _ . ~ vengono lasciati intatti.
Questa codifica è essenziale per garantire che i parametri URL vengano interpretati correttamente dal server, specialmente quando contengono spazi, caratteri speciali o caratteri internazionali.
Casi d’uso comuni
Le stringhe di query sono l’uso più comune della codifica URL. Ogni parametro passato in un URL deve essere codificato per garantire che i caratteri speciali non interferiscano con la struttura dell’URL stesso.
Nei flussi OAuth, i token e i callback URL devono essere codificati correttamente per evitare errori di reindirizzamento. Anche i dati dei form inviati con il metodo GET richiedono la codifica URL.
Quando si costruiscono URL dinamicamente in JavaScript, è fondamentale usare funzioni di codifica appropriate per evitare injection e malfunzionamenti.
encodeURI vs encodeURIComponent
encodeURI è progettata per codificare un URI intero. Preserva i caratteri strutturali dell’URL come /, :, ?, #, &, = e +. Utilizzala quando l’intero URL è già formato e vuoi solo rendere sicuri i componenti variabili.
È più aggressiva e codifica anche i caratteri riservati. È la scelta corretta quando devi codificare un singolo componente da inserire in un URL, come un parametro di query o un valore di path.
Un errore comune è usare encodeURI su un singolo parametro: i caratteri come / e ? rimarranno non codificati e potrebbero alterare la struttura dell’URL. Usa sempre encodeURIComponent per i singoli valori.