RUNWEBTOOLS
Italiano
Formati di dati & codifica

La codifica URL spiegata

Aggiornato 2026-07-06

Copia un URL con dentro un termine di ricerca e vedrai spesso qualcosa come %20 o %C3%A9 dove dovrebbe esserci uno spazio o una lettera accentata. È la codifica URL all'opera. Questa guida spiega cosa fa, perché serve e quali caratteri vengono sottoposti a escape.

Cos'è la codifica URL

La codifica URL — chiamata anche codifica percentuale (percent-encoding) — è un modo di rappresentare in un URL caratteri che altrimenti sarebbero non sicuri o ambigui. Ciascun carattere di questo tipo viene sostituito da un % seguito dal suo valore di byte in esadecimale. Uno spazio diventa %20; una e commerciale diventa %26.

Perché serve

Gli URL possono contenere solo un insieme limitato di caratteri, e alcuni hanno compiti speciali: ? avvia la stringa di query, & separa i parametri, / separa i segmenti di percorso e # marca un frammento. Se un valore che metti in un URL contiene uno di questi, va codificato perché sia trattato come dato, non come struttura.

Search term:  cats & dogs
In a URL:     ?q=cats%20%26%20dogs

Senza codifica, la & grezza verrebbe letta come l'inizio di un nuovo parametro, e la ricerca si romperebbe.

Caratteri riservati vs. non riservati

  • I caratteri non riservati (Unreserved) — lettere, cifre e - _ . ~ — sono sempre sicuri e non richiedono mai codifica.
  • I caratteri riservati (Reserved) — come ? & / # : @ = — hanno un significato speciale e vanno codificati quando usati come dati letterali.
  • Tutto il resto — spazi, lettere accentate, emoji e la maggior parte dei simboli — è codificato in base ai suoi byte UTF-8, ed è per questo che un carattere può diventare più coppie %xx.

Una confusione comune: il segno più

Nella stringa di query di un invio di modulo, gli spazi a volte sono codificati come + anziché %20. Entrambi possono significare «spazio» a seconda del contesto, il che fa inciampare — nel dubbio, %20 è sempre sicuro.

Codifica URL vs. Base64

Risolvono problemi diversi. La codifica URL rende il testo sicuro da mettere dentro un URL; Base64 rende i dati binari sicuri da spostare attraverso canali testuali. A volte sono combinati (Base64URL) ma non sono intercambiabili.

Per codificare o decodificare un valore, usa l'encoder URL, e per smontare tutti i parametri di una stringa di query, il parser di stringhe di query li suddivide in un elenco leggibile.

Altro su Formati di dati & codifica

Vedi tutte le guide di Formati di dati & codifica →

Strumenti citati in questa guida