Che cos'e la codifica URL? La codifica percentuale spiegata in modo semplice
Incolla in un browser un link che contiene uno spazio e succede qualcosa di strano: lo spazio si trasforma in %20. Quel %20 e la codifica URL al lavoro, e capirla chiarisce un’intera categoria di bug confusi legati a link, moduli e API. Questa guida spiega che cos’e la codifica URL, perche esiste e quando bisogna codificare anziche decodificare, scritta per gli sviluppatori ma accessibile a chiunque lavori con i link.
Perche gli URL hanno bisogno della codifica
Un URL puo contenere solo un insieme limitato di caratteri: lettere, cifre e una manciata di simboli come trattini, punti e barre. Tutto il resto deve essere rappresentato in un altro modo.
Il problema e che i dati reali sono pieni di caratteri al di fuori di quell’insieme. Spazi, punti interrogativi, e commerciali, barre, lettere accentate ed emoji compaiono nelle cose che vogliamo mettere negli URL, come i termini di ricerca e i valori dei moduli. Molti di questi caratteri svolgono anche un ruolo strutturale speciale all’interno di un URL, quindi inserirli grezzi confonderebbe qualsiasi cosa stia leggendo il link. La codifica URL e il modo concordato per trasportare quei dati in sicurezza.
Cosa fa la codifica percentuale
La codifica URL e chiamata anche codifica percentuale, e il nome descrive esattamente il meccanismo.
Qualsiasi carattere non consentito viene sostituito da un segno di percentuale seguito da due cifre esadecimali che rappresentano il valore in byte di quel carattere. Uno spazio diventa %20. Una e commerciale diventa %26. Una barra in avanti diventa %2F. Un punto interrogativo diventa %3F.
Cosi la frase fish & chips all’interno di un URL diventa fish%20%26%20chips. Il dato e completamente preservato, solo scritto in una forma che ogni browser e server e d’accordo su come leggere. La decodifica non fa altro che invertire il processo, riconvertendo ogni sequenza %XX nel carattere originale.
Dove conta di piu: le stringhe di query
La parte di un URL dopo il ? e la stringa di query, ed e li che la codifica si guadagna il pane.
Una stringa di query e un elenco di coppie di chiave e valore unite da & e =, cosi:
?city=New%20York&sort=price
Quei caratteri & e = sono strutturali. Separano una coppia dalla successiva e dividono le chiavi dai valori. Quindi se un valore contiene a sua volta una e commerciale o un segno di uguale, deve essere codificato, altrimenti verrebbe scambiato per la struttura della stringa di query e l’intera cosa verrebbe analizzata in modo errato. Codificare il valore evita che i dati dell’utente e l’impianto idraulico dell’URL vengano confusi l’uno con l’altro.
Quando codificare e quando decodificare
Le due direzioni coprono due momenti diversi nella vita di un link.
- Codifica quando stai costruendo un URL a partire da valori grezzi: un termine di ricerca digitato da un utente, un nome di file, un indirizzo email, qualsiasi cosa che entri in un segmento di percorso o in un parametro di query. Codificalo prima, cosi i caratteri speciali non possono rompere il link.
- Decodifica quando stai leggendo un URL costruito da qualcun altro: estraendo un valore da una stringa di query, ispezionando un link da un registro o riconvertendo un indirizzo pieno di
%20in qualcosa di leggibile per un essere umano.
Una regola pratica veloce: se stai per mettere dati dentro un URL, codificali. Se stai tirando dati fuori da uno, decodificali.
In cosa differisce da Base64
La codifica URL viene a volte confusa con Base64, ma risolvono problemi diversi.
La codifica percentuale e costruita appositamente per gli URL e tocca solo i caratteri che sono pericolosi in quel contesto, lasciando leggibili le lettere e le cifre normali. Base64, invece, riscrive tutto il suo input in un alfabeto compatto di lettere, cifre e un paio di simboli, pensato per spostare dati binari attraverso canali che accettano solo testo, non per creare un URL pulito. I due non sono intercambiabili: usa la codifica percentuale per rendere un valore sicuro per un URL, e Base64 quando devi rappresentare contenuto binario come testo semplice.
Codifica e decodifica nel tuo browser
Non devi cercare i codici esadecimali a mano. Lo strumento gratuito Codifica/Decodifica URL converte il testo in forma codificata in percentuale e viceversa con un solo clic, cosi puoi preparare un valore di query o leggere un link disordinato in pochi secondi.
Poiche lo strumento Codifica/Decodifica URL gira interamente nel tuo browser, non c’e registrazione e nulla di cio che incolli viene caricato da nessuna parte. Questo lo rende sicuro per link e parametri che potrebbero contenere valori sensibili.
Strumenti correlati
La codifica viaggia raramente da sola, quindi vale la pena conoscere alcuni vicini. Quando devi trasportare dati binari come testo anziche rendere sicuro un URL, lo strumento Codifica/Decodifica Base64 gestisce quella conversione. Per proteggere caratteri come < e & all’interno del contenuto di una pagina web anziche nei link, lo strumento Codifica/Decodifica HTML li sottopone a escape correttamente. E quando una risposta di un’API torna come una stringa densa di dati, il Formattatore JSON la rende leggibile con un’indentazione appropriata.
La versione breve
La codifica URL, o codifica percentuale, sostituisce i caratteri pericolosi con codici %XX cosi che spazi e caratteri speciali non possano rompere un link, cosa che conta soprattutto all’interno delle stringhe di query. Codifica quando costruisci un URL, decodifica quando ne leggi uno, e ricorri a Base64 solo quando ti serve binario come testo. Quando vuoi che venga fatto al posto tuo, lo strumento Codifica/Decodifica URL gestisce entrambe le direzioni nel tuo browser.
Prova Codifica / Decodifica URL ora
Codifica e decodifica URL online e gratis. Converti query string in percent-encoding o riporta %20 a testo leggibile direttamente nel browser, senza registrazione.
Apri Codifica / Decodifica URL