Vai al contenuto principale

Come decodificare una stringa codificata per URL

La decodifica inverte la codifica percentuale: ogni sequenza %XX diventa un byte e i byte vengono letti come testo UTF-8. La modalità Componente usa decodeURIComponent(), quindi il risultato è esattamente il valore originale.

Esempio svolto

Le sequenze UTF-8 multibyte diventano un singolo carattere.

Valore di ingresso
caf%C3%A9%20%26%20cr%C3%A8me
Risultato · decodeURIComponent()
café & crème

%20 diventa uno spazio, ma + resta un segno più letterale.

Valore di ingresso
a+b%20c
Risultato · decodeURIComponent()
a+b c

All’ultima sequenza manca una cifra esadecimale, quindi lo strumento mostra un errore.

Valore di ingresso
%E0%A4%A
Risultato · decodeURIComponent()
URL codificato non valido

Ripristinata la cifra mancante, i tre byte diventano una sola lettera devanagari.

Valore di ingresso
%E0%A4%A4
Risultato · decodeURIComponent()
त

Come si comporta lo strumento

  • Ogni sequenza %XX è un byte e i byte consecutivi vengono decodificati insieme come UTF-8: %C3%A9 diventa é.
  • Il segno più non viene trattato come spazio: + resta +. Se il testo proviene da un modulo HTML, sostituisci + con %20 prima di decodificare.
  • Se una sequenza è incompleta o non è UTF-8 valido, l’intero input viene rifiutato con un errore; nulla viene decodificato a metà.
  • La modalità URL completo (decodeURI) lascia codificati gli escape dei caratteri riservati come %26, %2F e %3F, per non cambiare la struttura dell’URL.

Guide alla codifica degli URL