Aller au contenu
uencoder

URL Encoding

L'encodage URL (percent-encoding) convertit en forme %HH les caractères interdits dans les URL, afin que des données arbitraires puissent figurer en toute sécurité dans les composants de l'URL.

Objectif

Empêcher les caractères réservés (comme /, ?, #, =) et non ASCII de casser la structure de l'URL, tout en restant réversible dans les deux sens.

Mécanisme

Les caractères non sûrs sont convertis octet par octet en % suivi de deux chiffres hexadécimaux majuscules. Le RFC 3986 définit les jeux de caractères réservés ; la forme HTML5 application/x-www-form-urlencoded encode en outre l'espace en +. Les navigateurs modernes et l'API fetch le gèrent automatiquement.

Cas d’usage

  • Transmettre du texte non ASCII et des caractères spéciaux dans les paramètres de requête d'URL
  • Encodage des paramètres de chemin d'API RESTful
  • Encodage des URL de rappel OAuth
  • Sujet et corps dans les liens mailto

Exemples

  • entrée
    a b&c
    Output
    a%20b%26c

    RFC 3986 form; the form-encoded variant is a+b%26c

Erreurs courantes

Encoding the entire URL instead of just the parameter values
Encode parameter values only and keep the /?=& delimiters

Termes associés

Outils associés

Tutoriels associés

References