// Encoder URL
URL Encoder / Decoder
Encodez ou décodez des composants d'URL en utilisant le percent-encoding. Utile pour les query strings et les données de formulaire.
Text
Encoded
URL Encoder / Decoder exemples.
// Décoder URL
Questions fréquentes.
Qu'est-ce que le percent-encoding ?
C'est un mécanisme pour encoder des caractères dans les URLs en utilisant % suivi de deux chiffres hexadécimaux.
Comment fonctionne l'encodage URL
L'encodage URL (aussi appelé encodage pourcentage) remplace les caractères non sûrs dans les URLs par une séquence composée d'un pourcentage (%) et du code ASCII hexadécimal à deux chiffres. Un espace est par exemple converti en %20, un signe moins en %2D.
Les caractères réservés comme /, ?, #, &, = et + ont une signification spécifique dans les URLs et ne sont pas encodés par défaut. Tous les autres caractères – y compris les lettres, chiffres et certains caractères spéciaux – restent inchangés.
L'encodage garantit que les URLs sont interprétées de manière univoque, même lorsqu'elles contiennent des caractères qui jouent un rôle particulier dans la syntaxe URL. C'est particulièrement important pour les paramètres personnalisés et les données.
Cas d'utilisation fréquents
L'utilisation la plus courante est l'encodage des paramètres de chaîne de requête. Lorsqu'un utilisateur saisit München & Berlin dans un champ de recherche, l'espace et le caractère & doivent être encodés pour que l'URL soit correctement interprétée.
OAuth 2.0 nécessite un encodage soigneux de tous les paramètres, en particulier pour le défi PKCE (code_verifier) et les URIs de redirection. Les erreurs d'encodage sont une cause fréquente d'erreurs d'authentification.
Les données de formulaire envoyées sous forme de chaîne encodée URL (application/x-www-form-urlencoded) utilisent le même procédé d'encodage. Les caractères spéciaux doivent également être correctement échappés ici.
encodeURI vs. encodeURIComponent
JavaScript propose deux fonctions d'encodage URL qui remplissent des objectifs différents. encodeURI encode une URI complète et laisse inchangés les caractères réservés comme /, ?, # et &, car ils font partie de la structure de l'URL.
encodeURIComponent, en revanche, encode presque tous les caractères spéciaux, y compris /, ? et &. Cette fonction est le bon choix lorsque vous devez encoder des valeurs individuelles qui seront insérées comme partie d'une URL – par exemple des paramètres de requête ou des segments de chemin.
En règle générale : utilisez encodeURIComponent pour les valeurs individuelles et encodeURI pour les URLs complètes. La plupart des développeurs préfèrent encodeURIComponent car elle est plus sûre et évite les erreurs inattendues.