Codificatore URL
Rendi il testo sicuro da usare dentro un URL.
Funziona nel browser. Quello che scrivi non viene inviato da nessuna parte.
- Modalità componente o URI completo
- Opzione più per lo spazio
- Funziona offline
Come codificare un URL
- Incolla il testo o l'URL.
- Scegli la codifica del componente per un singolo valore, o dell'URI completo per un intero indirizzo.
- Copia il risultato codificato.
Cosa viene codificato
| Caratteri | Codificato? | Esempio |
|---|---|---|
| Lettere e cifre | No | a-z, A-Z, 0-9 restano invariati |
| - _ . ~ | No | Lasciati invariati in entrambe le modalità |
| Spazio | Sì | %20, oppure + con l'opzione attiva |
| / ? # & = | Solo in modalità componente | La modalità URI completo li lascia invariati |
Modalità componente e modalità URI completo a confronto
| Modalità | Codifica / ? # & = | Da usare per |
|---|---|---|
| Componente | Sì | Un singolo valore di query o segmento di percorso |
| URI completo | No | Un indirizzo completo che stai per usare così com'è |
Quando serve la codifica percentuale
- Un valore di query string che contiene spazi o caratteri speciali, come un termine di ricerca.
- Testo non ASCII in un URL, come lettere accentate o un'altra scrittura, una volta trasformato in byte UTF-8.
- Costruire un link di redirect o di callback che porta un altro URL completo dentro un parametro.
Domande su Codifica URL
Qual è la differenza tra codifica del componente e dell'URI completo?
La codifica del componente applica l'escape a ogni carattere speciale, inclusi / e &, per l'uso dentro un singolo parametro di query. La codifica dell'URI completo lascia intatti i caratteri strutturali dell'URL come :, / e ?, perché fanno parte di un indirizzo valido.
Quando dovrei usare più per lo spazio?
Solo per gli invii classici di form (application/x-www-form-urlencoded), dove uno spazio viene scritto come + invece di %20.
Quali caratteri vengono codificati?
Lettere, numeri e - _ . ~ restano invariati. Tutto il resto diventa un simbolo percentuale seguito dal suo codice esadecimale a due cifre.
Questo segue uno standard web?
Sì. L'RFC 3986 definisce quali caratteri URI sono riservati e come applicare la codifica percentuale al resto. Questo strumento usa le funzioni integrate di JavaScript encodeURIComponent ed encodeURI, che seguono entrambe questo standard.
Come vengono codificate le lettere accentate o le emoji?
Vengono prima convertite in byte UTF-8, poi ogni byte viene scritto come %XX. La lettera é diventa %C3%A9, perché occupa due byte UTF-8.
Posso codificare un intero indirizzo, incluso https://?
Usa la modalità URI completo. Lascia invariati lo schema, l'host e le / che separano i segmenti del percorso, e codifica solo i caratteri che non sono mai sicuri in nessun punto di un URL.
La codifica cambia lettere e cifre?
No. A-Z, a-z e 0-9 non vengono mai codificati in nessuna delle due modalità, perché sono sempre sicuri da usare direttamente dentro un URL.
Qual è la differenza tra le due funzioni JavaScript dietro questo strumento?
La modalità componente usa encodeURIComponent, che applica l'escape a tutto tranne i caratteri non riservati, pensata per un singolo valore come un parametro di query. La modalità URI completo usa encodeURI, che lascia invariati anche i caratteri strutturali riservati dell'URL, perché si aspetta un indirizzo completo.