Opzioni avanzate
Converti + in spazi
Quando abilitata, i caratteri + verranno convertiti in spazi. Questo è utile durante la decodifica dei parametri di query.
Modalità live
Quando abilitata, il testo verrà decodificato automaticamente mentre digiti.
Queste opzioni ti aiutano a controllare come i caratteri codificati vengono decodificati nei tuoi URL.
Che cos’è la decodifica URL?
La decodifica URL inverte la codifica percentuale: legge le sequenze di escape %XX in un URL codificato e le riconverte nei caratteri che rappresentano. È così che si recupera una query string, un valore di modulo o un segmento di percorso leggibile da un URL consegnato già codificato da un browser, un'API o una riga di log.
Come funziona la decodifica URL?
La decodifica URL segue un processo specifico per riconvertire le sequenze codificate in percentuale nei loro caratteri originali:
- La stringa di input viene analizzata alla ricerca di sequenze di escape codificate in percentuale (%XX)
- Ogni %XX viene riconvertito dalle sue due cifre esadecimali al valore di byte originale
- I byte decodificati consecutivi vengono riassemblati in caratteri UTF-8 (una sequenza multi-byte diventa un singolo carattere)
- Nel contesto di una stringa di query, + viene decodificato come spazio (application/x-www-form-urlencoded), mentre %2B resta un + letterale
- I caratteri non riservati e il testo già decodificato passano senza modifiche
Perché usare un decodificatore URL?
- Output leggibile: trasforma %20, %40 e %3D di nuovo in spazio, @ e = così puoi leggere cosa dice davvero un URL
- Testo internazionale: ricostruisce i caratteri accentati e non ASCII dalle rispettive sequenze di byte UTF-8, così %C3%A9 torna a essere é
- Debug: ispeziona i valori reali dentro una query string, un redirect OAuth o un payload di webhook prima di agire
- Conforme agli standard: decodifica secondo RFC 3986, le stesse regole usate da browser e server, così vedi esattamente ciò che vedono loro
Quali sono le applicazioni comuni della decodifica URL?
La decodifica URL è essenziale in molti scenari di sviluppo web:
- Invio di moduli: lettura dei valori originali dei campi dai dati GET e POST in formato application/x-www-form-urlencoded
- Sviluppo API: spacchettamento dei parametri di percorso e query con codifica percentuale che arrivano a un endpoint API
- File system: recupero di percorsi e nomi di file che erano stati codificati con la percentuale per viaggiare dentro un URL
- Debug dei link: decodifica di URL condivisi o registrati nei log per vedere i caratteri speciali e il testo internazionale che contengono
Com’è fatto un esempio di decodifica URL?
Ecco alcuni esempi comuni di decodifica URL: %20 (o +) diventa uno spazio, %40 diventa @, %23 diventa #, %26 diventa &, e %3D diventa =. Una sequenza UTF-8 come %C3%A9 diventa il carattere internazionale é.
Che cos'è la codifica percentuale?
La codifica percentuale è il meccanismo definito dalla RFC 3986 §2.1 per rappresentare caratteri non sicuri o riservati all'interno di un URI. La regola è meccanica: ogni byte che non può apparire letteralmente viene scritto come un segno di percentuale seguito da due cifre esadecimali — la forma %XX —, dove XX è il valore del byte. I caratteri non ASCII come é vengono prima codificati come la loro sequenza di byte UTF-8 e poi ogni byte viene codificato percentualmente singolarmente. Gli sviluppatori si imbattono in questo quasi quotidianamente: nelle query string, negli invii di moduli, negli URL di callback OAuth, nei parametri di percorso delle API REST e ovunque un URL debba trasportare punteggiatura, spazi o caratteri al di fuori dell'insieme non riservato A–Z a–z 0–9 - _ . ~.
Come funziona davvero la decodifica di %C3%A9 in é?
Prendi la query string codificata ?q=caf%C3%A9&lang=fr. La decodifica produce ?q=café&lang=fr. Ecco la spiegazione byte per byte:
- Ingresso:
?q=caf%C3%A9&lang=fr - Uscita:
?q=café&lang=fr
%C3→ byte0xC3(binario11000011) — il byte iniziale di una sequenza UTF-8 da 2 byte.%A9→ byte0xA9(binario10101001) — il byte di continuazione. Insieme,C3 A9è la codifica UTF-8 di U+00E9, che èé.- I caratteri
?,=e&rimangono intatti perché sono strutturali — delimitano la query e le sue coppie chiave/valore. Anche il letteralecafpassa senza modifiche, poiché le lettere ASCII minuscole appartengono all'insieme non riservato.
Qual è la differenza tra decodeURIComponent e decodeURI?
JavaScript espone due decoder integrati, e confonderli è uno dei bug più comuni nella gestione degli URL:
decodeURIComponent(str)decodifica ogni sequenza codificata percentualmente, inclusi i caratteri riservati come&,=,?,/e#. Usalo su singoli valori di query string o segmenti di percorso — mai su un URL intero.decodeURI(str)è volutamente conservativo: salta i caratteri riservati. Passargli%26restituisce la stringa letterale%26, non&. È pensato per URI interi in cui si vuole che la struttura sopravviva a un'andata e ritorno.
Regola pratica: se la stringa è un pezzo di un URL (un singolo parametro, un frammento, un nome di file codificato), scegli decodeURIComponent. Questo strumento si comporta come decodeURIComponent — ogni sequenza %XX nel tuo input viene decodificata, inclusi i caratteri riservati.
Decodificare un URL è il modo in cui leggi davvero ciò che contiene. Incolla una stringa codificata qui sopra e ogni sequenza %XX si riconverte immediatamente nel suo carattere nel tuo browser, così puoi fare il debug di un parametro di query, verificare un redirect OAuth o recuperare un nome di file accentato senza inviare nulla a un server.