Decodificatore URL Online

Decodifica URL codificati in percentuale

Prova un esempio

URL Codificato / Testo

Decodificato

Esegue in locale · Sicuro per incollare segreti
Output decodificato...

Cos'è la decodifica URL?

La decodifica URL (decodifica percentuale) è l'inverso della codifica URL: converte le sequenze codificate percentualmente nei loro caratteri originali. Ogni occorrenza di un segno percentuale seguito da due cifre esadecimali (%XX) viene sostituita dal byte che XX rappresenta. I byte codificati consecutivi multipli vengono ricombinati per ricostruire il carattere UTF-8 originale.

La decodifica URL è un'attività quotidiana per gli sviluppatori che lavorano con API, web scraping, analisi dei log e flussi di autenticazione. Gli URL codificati sono leggibili dalle macchine ma opachi per gli esseri umani — decodificarli rivela istantaneamente i percorsi reali, le query di ricerca, le destinazioni di reindirizzamento e i valori dei parametri che altrimenti richiederebbero una conversione mentale da hex a carattere.

Perché usare questo strumento?

Comprendi rapidamente qualsiasi URL o query string codificata percentualmente — nessuna console del browser necessaria, nulla inviato a un server.

Decodifica istantanea
Incolla qualsiasi URL o parametro codificato e vedi immediatamente la versione leggibile. Ottimo per il debug di richieste API e file di log.
🛡️
Recupero degli errori
Ricorre al legacy unescape() per gli input che contengono vecchi caratteri Latin-1 codificati percentualmente che fallirebbero con decodeURIComponent.
🔒
Solo lato client
Tutta la decodifica viene eseguita localmente nel tuo browser. Token, password e parametri di query privati non lasciano mai il tuo dispositivo.
🔁
Supporto URL completo
Decodifica URL completi o valori di parametri individuali. Lo strumento gestisce sia gli spazi %20 standard che i segni + come caratteri più letterali.

Come usare questo decodificatore URL online

Nessun account, nessuna installazione. Incolla la tua stringa codificata in percentuale nel campo di input e il risultato decodificato appare all'istante. Tutto viene eseguito nel tuo browser — i tuoi dati non lasciano mai il tuo dispositivo.

  1. 1
    Incolla il tuo URL codificato o la tua stringa
    Copia qualsiasi stringa codificata in percentuale — un URL dalla barra degli indirizzi, un parametro di query dai log del server, una risposta API o un target di redirect — e incollala nel campo di input.
  2. 2
    Rilevamento automatico del formato
    Il decodificatore gestisce automaticamente sia la codifica percentuale %XX sia il + come spazio (application/x-www-form-urlencoded). Non è necessario specificare manualmente il formato di codifica.
  3. 3
    Esamina l'output decodificato
    Il testo leggibile appare all'istante. Se l'input conteneva codifica annidata (stringhe doppamente codificate), il decodificatore risolve un livello alla volta. Appare un errore per le sequenze %XX malformate.
  4. 4
    Copia o ricodifica
    Clicca su Copia per prendere la stringa decodificata. Devi codificarla di nuovo con impostazioni diverse? Passa allo strumento Codificatore URL con un clic.

Come funziona la decodifica

Il decodificatore scansiona l'input alla ricerca di sequenze %, converte ogni gruppo di due cifre esadecimali in un valore di byte, raggruppa sequenze di byte consecutivi e le interpreta come UTF-8 per produrre i caratteri Unicode finali.

Esempio
Inserimento:https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dhello%20world
%3A:  %2F/  %3F?  %3D=  %20space
Output:https://example.com/search?q=hello world

Riferimento ai caratteri codificati percentualmente

Un riferimento rapido per le sequenze codificate percentualmente più frequenti:

CodificatoCar.Dove lo vedrai
%20spacepath segments, query values
%2B+literal plus (not a space in query)
%2F/slash inside a path component
%3F?literal question mark in a value
%23#literal hash in a value
%26&literal ampersand in a value
%3D=literal equals sign in a value
%40@at sign in username / password
%3A:colon inside a path segment
%25%literal percent sign
%2C,comma in path or query
%5B[opening bracket
%5D]closing bracket
%7B{curly brace in template literals
%7D}curly brace in template literals

Casi d'uso comuni

Debug di richieste API
Copia un URL dai log di rete dei DevTools del browser e decodificalo per vedere i valori reali dei parametri di query — particolarmente utile quando strumenti automatizzati o librerie hanno codificato percentualmente i parametri.
Lettura dei file di log
I log di accesso dei server web e i log delle applicazioni memorizzano gli URL nella loro forma codificata. Decodificali per trovare i percorsi reali richiesti, i termini di ricerca e i valori dei parametri.
Ispezione dei reindirizzamenti
I callback OAuth, i reindirizzamenti SSO e gli URL di tracciamento dei link spesso contengono parametri redirect_uri o next fortemente codificati. Decodifica l'URL per tracciare la destinazione prevista.
Analisi dei payload webhook
I body dei webhook inviati come application/x-www-form-urlencoded (Stripe, Twilio, GitHub) arrivano come stringhe codificate percentualmente. Decodificali per leggere i valori reali dei campi.
Estrazione di query di ricerca
Gli URL di analytics e gli header referrer contengono la query di ricerca originale dell'utente codificata percentualmente nel parametro q=. Decodifica per visualizzare o analizzare i termini di ricerca reali.
Reverse engineering di URL
Quando si integra con API di terze parti o si fa scraping, gli URL incontrati spesso contengono segmenti di percorso e parametri codificati. Decodificali per capire la struttura dell'URL e riprodurre le richieste.

Insidie comuni

Questi sono gli errori più frequenti nella decodifica di stringhe codificate percentualmente:

Confondere + con %20
Nei dati application/x-www-form-urlencoded (invii di moduli HTML), + rappresenta uno spazio. Ma in un percorso URL grezzo o in un valore codificato con encodeURIComponent, + è un segno più letterale. decodeURIComponent non converte + in spazio — usa URLSearchParams o unquote_plus per i dati dei moduli.
Stringhe doppialmente codificate
Se una stringa è stata codificata due volte, decodificarla una volta lascia ancora segni percentuale: %2520 si decodifica in %20, non in uno spazio. Decodifica una seconda volta per ottenere il valore originale. Fai attenzione a questo nei log, proxy e middleware che ricodificano dati già codificati.
Sequenze percentuali malformate
Un % isolato o seguito da caratteri non esadecimali (es. %GG o % 2) è invalido e genererà un URIError. Valida sempre l'input o racchiudi la decodifica in un try/catch.
Mismatch di codifica (Latin-1 vs UTF-8)
I vecchi sistemi (urlencode di PHP, ASP classico) codificavano i caratteri come byte Latin-1. Una stringa codificata come Latin-1 potrebbe decodificarsi in modo errato con un decodificatore UTF-8. Se vedi caratteri illeggibili, prova il percorso legacy unescape() o determina la codifica originale.

Esempi di codice

Come decodificare stringhe URL nei linguaggi e ambienti più diffusi:

JavaScript (browser / Node.js)
// Decode a percent-encoded component
decodeURIComponent('hello%20world%20%26%20more') // → "hello world & more"

// Decode a full URL (leaves structure characters encoded)
decodeURI('https://example.com/path?q=hello%20world') // → "https://example.com/path?q=hello world"

// Parse a query string (handles + as space automatically)
const params = new URLSearchParams('q=hello+world&lang=en')
params.get('q') // → "hello world"
Python
from urllib.parse import unquote, unquote_plus, parse_qs

# Decode percent-encoded string
unquote('hello%20world%20%26%20more')   # → 'hello world & more'

# Decode form-encoded string (+ → space)
unquote_plus('hello+world%21')          # → 'hello world!'

# Parse full query string
parse_qs('q=hello%20world&lang=en')     # → {'q': ['hello world'], 'lang': ['en']}
Node.js (URL API)
const url = new URL('https://example.com/search?q=hello%20world%20%26%20more')
url.searchParams.get('q')  // → "hello world & more"
url.pathname               // → "/search"
CLI (bash)
# Decode with Python one-liner
python3 -c "from urllib.parse import unquote; print(unquote('hello%20world'))"

# Decode with Node.js
node -e "console.log(decodeURIComponent('hello%20world%20%26'))"

Decodificatore URL vs. alternative

Diversi strumenti possono decodificare stringhe codificate in percentuale, ma differiscono per chiarezza, privacy e praticità.

Questo strumento
Basato su browser, istantaneo, privato. Gestisce la codifica %XX, il + come spazio, Unicode e le sequenze malformate. Nessun dato inviato ad alcun server.
Barra degli indirizzi del browser
I browser decodificano gli URL per la visualizzazione, ma non sempre completamente — alcuni caratteri codificati rimangono visibili nella barra degli indirizzi. Non utile per ispezionare singoli valori di parametri.
DevTools / curl -v
I DevTools del browser e curl mostrano URL grezzi e decodificati nelle richieste di rete. Utile per il debug, ma richiede di cambiare strumento e di sapere dove cercare.

Domande frequenti

Qual è la differenza tra decodeURIComponent e decodeURI?
decodeURIComponent decodifica tutte le sequenze codificate percentualmente inclusi i caratteri riservati (%2F → /, %3F → ?, ecc.). decodeURI decodifica solo le sequenze che non produrrebbero un carattere con significato speciale in un URL — lascia %2F, %3F, %23 e altri caratteri strutturali codificati. Usa decodeURIComponent per i valori dei parametri; usa decodeURI solo quando hai un URL completo e vuoi preservarne la struttura.
Perché vedo URIError: URI malformato?
Questo errore di decodeURIComponent si verifica quando l'input contiene un % non seguito da due cifre esadecimali valide, o quando una sequenza UTF-8 multi-byte è incompleta (es. %E2 senza il seguente %82%AC). Rimuovi o esegui l'escape dei segni percentuale isolati prima di decodificare.
La decodifica tratta + come spazio?
No — decodeURIComponent tratta + come un segno più letterale, non come spazio. La convenzione + → spazio si applica solo ai dati application/x-www-form-urlencoded (invii di moduli HTML). Per decodificare dati codificati in modulo, usa URLSearchParams (browser/Node) o urllib.parse.unquote_plus (Python).
È sicuro fare la decodifica URL lato client?
Sì — la decodifica URL è una trasformazione pura senza richieste di rete. Tutti i browser moderni includono decodeURIComponent e decodeURI come funzioni native. Questo strumento esegue la decodifica interamente nel tuo browser; nessun dato viene inviato da nessuna parte.
Come decodifico un URL codificato più volte?
Decodificalo più volte fino a quando l'output si stabilizza (non vengono più risolte sequenze %). Questo accade quando un URL già codificato passa attraverso un altro codificatore. Ogni passaggio di decodifica rimuove uno strato di codifica.
Cosa rappresenta %XX?
I due caratteri dopo % sono cifre esadecimali che rappresentano un valore di byte singolo (00–FF). Per i caratteri ASCII, questo byte è il codice ASCII del carattere: %41 = 65 = 'A'. Per i caratteri non ASCII, più sequenze %XX rappresentano la sequenza di byte UTF-8 del carattere: il segno euro è %E2%82%AC (tre byte: 0xE2, 0x82, 0xAC).
Quale codifica usa il browser quando invia moduli HTML?
I moduli HTML con method=GET aggiungono i campi all'URL usando la codifica application/x-www-form-urlencoded, che sostituisce gli spazi con + invece di %20 e codifica in percentuale gli altri caratteri speciali. L'opzione + → spazio dello strumento URL Decode gestisce questo formato. I moduli con method=POST e enctype=application/x-www-form-urlencoded usano lo stesso schema nel corpo della richiesta.
C'è un limite di dimensione per la decodifica?
Nessun limite lato server — lo strumento viene eseguito interamente nel tuo browser. I limiti pratici dipendono dalla memoria del tuo browser. Per stringhe codificate molto lunghe o elaborazione batch, usa decodeURIComponent in uno script.