Aller au contenu principal

Comment encoder une chaîne pour une URL

L’encodage pourcent remplace chaque caractère non sûr dans une URL par % suivi de la valeur hexadécimale de chacun de ses octets UTF-8. Le mode Composant, qui utilise encodeURIComponent(), convient à une seule valeur de requête ou à un segment de chemin.

Exemple détaillé

CaractèreOctets UTF-8Composant
␠%20%20
&%26%26
=%3D%3D
/%2F%2F
?%3F%3F
é%C3 %A9%C3%A9
😀%F0 %9F %98 %80%F0%9F%98%80

Le mode Composant encode toute la phrase en une seule valeur sûre.

Entrée
rock & roll/size=XL? café 😀
Résultat · encodeURIComponent()
rock%20%26%20roll%2Fsize%3DXL%3F%20caf%C3%A9%20%F0%9F%98%80

Le mode URL complète laisse & = / ? inchangés : réservez-le à une URL entière.

Entrée
rock & roll/size=XL? café 😀
Résultat · encodeURI()
rock%20&%20roll/size=XL?%20caf%C3%A9%20%F0%9F%98%80

Ce que fait l’outil

  • Les lettres A–Z et a–z, les chiffres 0–9 et - _ . ! ~ * ' ( ) ne sont jamais modifiés.
  • Tout autre caractère est converti en octets UTF-8, et chaque octet s’écrit % suivi de deux chiffres hexadécimaux majuscules : é occupe deux octets, la plupart des emoji quatre.
  • Le mode Composant encode aussi les caractères réservés : / ? # [ ] @ & = + $ , ; afin qu’ils ne puissent pas modifier la structure de l’URL.

Guides d’encodage d’URL