Codificatore di URL

Codifica un testo in percentuale perché possa viaggiare senza problemi in un URL, interamente nel tuo browser.

Gira interamente nel tuo browser. Non viene caricato, registrato o salvato niente.

Un URL ha una grammatica, e i caratteri che ne fanno parte — "?", "&", "/", "#", gli spazi — vanno protetti quando fanno parte di un valore e non della struttura. Quella protezione è la codifica in percentuale.

Come funziona

Ogni carattere fuori dall'insieme non riservato del RFC 3986 — lettere, cifre, "-", ".", "_" e "~" — viene sostituito da un segno di percentuale e dal valore esadecimale di ciascuno dei suoi byte UTF-8. Uno spazio diventa %20 e una lettera accentata diventa due escape, perché in UTF-8 sono due byte.

Lo stile dei dati di modulo esiste perché l'invio dei moduli HTML è più vecchio di quella regola: lì uno spazio è "+" e anche "~" viene protetto. Scegli quello quando stai costruendo un corpo application/x-www-form-urlencoded, e lo stile componente per tutto il resto.

Esempi

Caso Dati inseriti Risultato
Una frase di ricerca che finisce in una query string coffee & cake coffee%20%26%20cake
La stessa frase come dati di modulo coffee & cake coffee+%26+cake

Domande frequenti

Devo codificare un URL intero con questo?

No. Codificare un URL completo protegge anche il "://" e i separatori, e ti lascia con una stringa che nessun client può seguire. Codifica i singoli valori, poi monta l'URL con quelli.

Perché qui "!" viene codificato e la console del mio browser lo lascia stare?

encodeURIComponent di JavaScript salta di proposito "!", "'", "(", ")" e "*" anche se il RFC 3986 li riserva. Codificarli è sempre accettato ed evita sorprese con analizzatori più severi, quindi questo strumento lo fa.

E il "#" di un frammento?

Un "#" letterale dentro un valore va codificato come %23, altrimenti tutto quello che segue viene letto come frammento e non raggiunge mai il server.

Da sapere

  • Tutto avviene nel tuo browser. Quello che incolli non viene caricato, registrato o salvato.

Fonti

Tutti gli strumenti di Codice