Cosa fa questo URL encoder & decoder
Questo URL encoder & decoder online converte qualsiasi testo in formato percent-encoding conforme all'RFC 3986 e viceversa — tutto nel browser, senza inviare nulla a un server. 100% lato client — i tuoi dati non lasciano mai il browser. Nessun upload, nessun tracciamento, nessun log sul server.
L'RFC 3986 riserva 18 caratteri ASCII (tra cui &, =, ?, #, /) che devono essere percent-encoded prima di comparire in una query string. Lo strumento supporta due modalità: **encodeURI** (preserva i caratteri riservati, utile per URL completi) e **encodeURIComponent** (codifica tutto, ideale per singoli valori di parametro). I caratteri UTF-8 multi-byte — fondamentali per chi lavora con l'italiano e altri alfabeti europei — vengono gestiti correttamente, rispettando anche le linee guida AGID che prescrivono UTF-8 come codifica obbligatoria per i servizi digitali della Pubblica Amministrazione italiana.
Funzionalità
- Due modalità di codifica. Scegli tra encodeURI (preserva
/,?,&,=,#) per URL completi, e encodeURIComponent per codificare singoli valori di query string — nessuna confusione tra le due. - Decodifica istantanea. Incolla qualsiasi URL percent-encoded e ottieni il testo originale in chiaro. Utile per leggere redirect URI, token OAuth e log HTTP.
- UTF-8 multi-byte corretto. Caratteri accentati italiani, emoji e qualsiasi codepoint Unicode vengono codificati secondo lo standard: ogni byte diventa una sequenza %XX. Un singolo carattere non-ASCII comporta fino al 200% di overhead — lo strumento te lo mostra esplicitamente.
- Copia con un clic. Il pulsante Copia trasferisce il risultato negli appunti immediatamente, senza selezionare manualmente il testo.
- Nessuna dipendenza da rete. Lo strumento gira interamente nel browser — nessuna chiamata API, nessun log sul server. Sicuro anche per query string contenenti token, email o altri dati personali.
Come usare il URL encoder & decoder
Basta incollare il testo nel campo corretto e il risultato appare in tempo reale. Per codificare da JavaScript puoi usare encodeURIComponent('a b&c=d'), da Python from urllib.parse import quote; quote('a b&c=d'), e da bash jq -rR @uri <<< 'a b&c=d'.
- Scegli la modalità. Seleziona la scheda "Codifica" per convertire testo semplice in formato percent-encoding, o "Decodifica" per fare il contrario.
- Attiva o disattiva la codifica componente. Spunta "Codifica come componente" se stai preparando il valore di un singolo parametro (ad esempio un redirect_uri OAuth). Lascia deselezionato per URL completi.
- Incolla o digita il testo. Il risultato si aggiorna istantaneamente mentre scrivi. Non devi premere nessun pulsante di conferma.
- Copia il risultato. Premi "Copia" per trasferire il testo codificato o decodificato negli appunti e incollarlo dove ti serve.
Casi d'uso comuni
- Parametri di query string sicuri. Quando costruisci URL con valori dinamici (nomi, email, token), codificare ogni valore con encodeURIComponent evita che caratteri come
&o=spezzino la struttura del parametro. - Redirect URI nei flussi OAuth. I provider OAuth richiedono che il redirect_uri sia percent-encoded. Usa la modalità componente per codificare correttamente l'URL di callback prima di passarlo come parametro.
- Debug di valori doppiamente codificati nei log. Il classico bug %2520: quando un valore già codificato viene codificato una seconda volta,
%20diventa%2520. Decodifica il valore dal log per identificare il punto esatto della duplicazione. Se lavori con dati in altri formati, il [Base64 encoder & decoder](/it/base64/) può aiutarti a decodificare payload codificati in base64. - Parametri UTM per il tracking analytics. I valori dei parametri utm_source e utm_campaign spesso contengono spazi o caratteri speciali. Codificarli correttamente prima di inserirli nelle campagne evita URL rotti nelle piattaforme di analytics.
- Integrazione con API della Pubblica Amministrazione. I servizi digitali italiani conformi alle linee guida AGID usano UTF-8. Codificare correttamente i parametri con caratteri accentati (à, è, ì, ò, ù) garantisce l'interoperabilità con questi endpoint.
Domande frequenti
I miei dati sono al sicuro usando questo strumento?
Sì. Lo strumento è 100% lato client: tutta la logica gira nel browser tramite JavaScript. Nessun testo viene inviato a un server, non esiste nessun log, nessun cookie di tracciamento. Puoi usarlo tranquillamente anche con token, password o dati personali.
Qual è la differenza tra encodeURI e encodeURIComponent?
encodeURI lascia intatti i caratteri riservati come /, ?, &, =, # — è pensato per URL completi. encodeURIComponent li codifica tutti: è quello corretto per i valori dei singoli parametri. Usare encodeURI su un valore di query string è uno degli errori più comuni, perché un & non codificato spezza il parsing dell'URL.
Perché lo spazio a volte diventa %20 e altre volte +?
%20 è la codifica RFC 3986 corretta per lo spazio negli URL (path e query). Il + per lo spazio è una convenzione di application/x-www-form-urlencoded, usata nei form HTML — non è la stessa cosa. Questo strumento usa sempre %20, che è il formato corretto per gli URL.
Come si decodifica un URL in Python?
Usa from urllib.parse import unquote; unquote('hello%20world') per decodificare. Per codificare usa quote(). Per la query string in modo completo, urllib.parse.urlencode() gestisce automaticamente la codifica dei parametri. L'MDN documenta comportamenti analoghi per JavaScript con JSON.parse e le API correlate.
Cosa succede se codifico un valore già codificato?
Ottieni una doppia codifica: il carattere % viene trasformato in %25, quindi %20 diventa %2520. Questo è un bug frequente nei sistemi che concatenano URL senza verificare se i valori siano già stati codificati. Usa la scheda Decodifica per diagnosticare il problema.
Lo strumento gestisce correttamente i caratteri italiani come à, è, ù?
Sì. I caratteri accentati italiani sono codepoint Unicode che in UTF-8 occupano 2 byte ciascuno. Ogni byte viene codificato separatamente come %XX, producendo sequenze del tipo %C3%A0 per à. Questo è il comportamento corretto secondo l'RFC 3986 e conforme allo standard UNI CEI EN ISO/IEC 10646 adottato in Italia.