La codifica URL (codifica percentuale) è il processo di conversione dei caratteri non sicuri negli URL nel formato %XX. Gli URL possono contenere solo un piccolo sottoinsieme di caratteri ASCII (lettere, cifre, -_.~), tutti gli altri caratteri (inclusi cinese, spazi, simboli speciali) devono essere codificati prima di essere trasmessi in un URL. Ad esempio, lo spazio è codificato come %20, il carattere cinese '中' come %E4%B8%AD.
**encodeURIComponent vs encodeURI**: Queste sono le due funzioni di codifica più utilizzate. encodeURIComponent codifica in modo più esaustivo, inclusi i delimitatori di parametri come &, =, ?, quindi è adatta per codificare valori di parametri singoli. encodeURI preserva la struttura dell'URL (schema://, percorso, /, ?, #), quindi è adatta per codificare URL completi. L'uso errato causa errori di analisi dei parametri.
**RFC 3986 vs standard precedenti**: RFC 3986 tratta la tilde ~ come carattere sicuro che non richiede codifica, mentre gli standard iniziali la codificano come %7E. L'uso di RFC 3986 riduce gli escape non necessari, migliora la leggibilità dell'URL ed evita problemi di analisi di %7E su alcuni server.
**Modalità Query Only**: Viene utilizzata quando è necessario codificare solo i valori dei parametri di query nell'URL, senza influenzare i nomi delle chiavi, i segni di uguale e i simboli &. Ad esempio, ?name=张三 viene codificato come ?name=%E5%BC%A0%E4%B8%89, mantenendo i nomi delle chiavi leggibili e codificando solo i valori.
**Evidenziazione della codifica**: Evidenzia in tempo reale i caratteri nel formato %XX in color ambra in modo che gli utenti vedano a colpo d'occhio quali caratteri sono stati codificati. Questo aiuta a comprendere le regole di codifica: lettere e numeri sono generalmente caratteri sicuri che non vengono codificati, solo il cinese e i simboli speciali vengono codificati. Tutti i calcoli vengono eseguiti localmente nel browser, nessun dato viene inviato.