Skip to main content
CheckTown
Convertitori

Codifica e decodifica URL: Rendi le URL sicure per il web istantaneamente

Pubblicato 5 min di lettura
In questo articolo

Cos'è la codifica URL?

La codifica URL (detta anche percent-encoding) converte i caratteri non sicuri o riservati negli URL in un formato sicuro. Ogni carattere non sicuro viene sostituito da un segno % seguito dal suo codice ASCII esadecimale a due cifre. Ad esempio, uno spazio diventa %20 e una e commerciale diventa %26.

Gli URL possono contenere solo un insieme limitato di caratteri ASCII. I caratteri al di fuori di questo insieme — inclusi spazi, lettere non ASCII e simboli speciali — devono essere codificati in percent-encoding per essere trasmessi in modo sicuro in un URL.

Come funziona la codifica URL

Il codificatore identifica i caratteri non sicuri negli URL e li sostituisce con i corrispondenti equivalenti in percent-encoding.

  • Rilevamento dei caratteri sicuri — lettere, cifre e - _ . ~ vengono lasciati invariati
  • Gestione dei caratteri riservati — ! * ' ( ) ; : @ & = + $ , / ? # [ ] vengono codificati nella maggior parte dei contesti
  • Supporto Unicode — i caratteri non ASCII vengono prima codificati in UTF-8, poi ogni byte viene codificato in percent-encoding

Prova gratuitamente — nessuna registrazione richiesta

Codifica o decodifica un URL →

Quando usare la codifica URL

La codifica URL è necessaria ogni volta che compaiono caratteri speciali nei componenti di un URL.

  • Parametri query — codifica i valori passati come parametri nella query string, specialmente i termini di ricerca forniti dall'utente
  • Richieste API — codifica i segmenti di percorso e i parametri durante la costruzione programmatica degli URL delle API
  • Dati dei moduli — codifica i dati dei form prima di aggiungerli agli URL nelle richieste GET

Domande frequenti

Qual è la differenza tra encodeURI e encodeURIComponent in JavaScript?

encodeURI codifica un URL completo e lascia intatti caratteri come /, :, # perché hanno un significato strutturale negli URL. encodeURIComponent codifica un singolo componente dell'URL (come il valore di un parametro query) e codifica in percent-encoding anche quei caratteri strutturali. Per codificare i valori dei singoli parametri, usa sempre encodeURIComponent.

Perché a volte uno spazio appare come + invece di %20?

Il formato application/x-www-form-urlencoded (usato nelle submission di form HTML) codifica gli spazi come + anziché %20. Si tratta di una convenzione legacy degli standard web delle origini. Nelle query string dei form HTML, + significa spazio; in altri contesti URL si usa %20. Entrambi sono validi, ma il contesto determina quale utilizzare.

Devo codificare l'intero URL o solo alcune parti?

Codifica solo i singoli componenti (segmenti di percorso, valori dei parametri query). Codificare l'intero URL significherebbe codificare anche i caratteri :, / e ? che definiscono la struttura dell'URL, compromettendone il funzionamento. La regola è: codifica i valori, non i caratteri strutturali che formano l'URL.

Strumenti correlati