Aller au contenu principal
FreeOnlineTools Go
Français
Explication

Qu'est-ce que le codage URL ? Une explication complète du codage percent

Par FreeOnlineTools Team · Mis à jour le 2026-09-02

Réponse rapide

L'encodage URL (encodage en pourcentage) remplace les caractères dangereux dans un URL par % suivi de deux chiffres hexadécimaux. Par exemple, l'espace devient %20 et devient %26. Il garantit que URLs peut être transmis sans ambiguïté. Utilisez notre encodeur et décodeur URL gratuits pour convertir dans votre navigateur.

Introduction

L'encodage URL, également appelé encodage en pourcentage, est un mécanisme permettant d'encoder des caractères spéciaux dans un URL afin qu'ils puissent être transmis en toute sécurité sur Internet. URLs ne peut contenir qu'un ensemble limité de caractères ASCII : lettres, chiffres et quelques caractères réservés. Tout autre caractère (espaces, guillemets, lettres non-ASCII) doit être codé sous la forme d'un signe de pourcentage (%) suivi de deux chiffres hexadécimaux représentant la valeur en octet du caractère. Le codage URL est défini par la RFC 3986.

Pas à pas

  1. Comprendre quels caractères doivent être encodés

    Les caractères non réservés (A-Z, a-z, 0-9, -, _, ., ~) n'ont pas besoin d'être codés. Les caractères réservés (:, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, =) ont une signification particulière dans URLs et doivent être codés lorsqu'ils sont utilisés comme données. Tous les autres caractères (espaces, guillemets, non-ASCII) doivent être codés.

  2. Apprendre le mécanisme d'encodage

    Chaque caractère nécessitant un codage est converti en sa séquence d'octets UTF-8, puis chaque octet est représenté par %XX où XX est la valeur hexadécimale. Espace (0x20) → %20. Le caractère non-ASCII 'é' (UTF-8 : 0xC3 0xA9) → %C3%A9.

  3. Distinguer encodeURI et encodeURIComponent

    encodeURI() code un URL complet mais préserve les caractères réservés (:/?&=) qui font partie de la structure URL. encodeURIComponent() encode tout sauf les caractères non réservés — utilisez-le pour les valeurs des paramètres de requête où les caractères réservés sont des données et non une structure.

  4. Décoder URLs codé en pourcentage

    Le décodage inverse l'encodage : %20 → espace, %C3%A9 → é. Utilisez decodeURI() pour URLs complet et decodeURIComponent() pour les valeurs des paramètres de requête. Les séquences d'échappement non valides (comme %ZZ) génèrent des erreurs.

Exemples

Encoder un espace

Saisir: hello world

Sortir: hello%20world

Encoder du texte non-ASCII

Saisir: café

Sortir: caf%C3%A9

Encoder une valeur de paramètre de requête

Saisir: name=John Doe & Co.

Sortir: name%3DJohn%20Doe%20%26%20Co.

Problèmes courants

  • Encodage de l'intégralité de URL lorsque seules les valeurs nécessitent un encodage : encode les valeurs des paramètres de requête, pas la structure URL (://?&=).
  • Double encodage — si un URL est déjà encodé, l'encodage produit à nouveau %2520 au lieu de %20. Décodez d’abord si vous ne savez pas s’il est déjà codé.
  • Utilisation incorrecte de encodeURI vs encodeURIComponent : encodeURI préserve les caractères de structure URL ; encodeURIComponent les code. Utilisez ce dernier pour les valeurs des paramètres de requête.
  • Les séquences d'échappement invalides —%ZZ ou un seul % à la fin ne sont pas valides et généreront des erreurs une fois décodées.

Conseils

  • Encodez toujours les valeurs des paramètres de requête pouvant contenir des espaces, des caractères spéciaux ou des entrées utilisateur pour empêcher l’injection URL.
  • Utilisez encodeURIComponent() pour les valeurs des paramètres de requête et encodeURI() pour le URLs complet qui nécessite simplement le codage de caractères non sécurisés.
  • L’encodage URL n’est pas un cryptage : n’importe qui peut le décoder. Ne l’utilisez jamais pour masquer des données sensibles.
  • Utilisez notre encodeur et décodeur URL pour une conversion instantanée et privée dans votre navigateur.

Outils associés

Guides connexes

Références