Encodeur/Décodeur d'URL

Encode et décode les URLs.


URL invalide

Tips

  • Le caractère japonais「あ」est encodé en %E3%81%82 en UTF-8.
  • Un espace peut devenir %20 dans les chemins d'URL ou + dans les paramètres de requête (différence entre RFC 3986 et la spécification des formulaires HTML).
  • Les caractères réservés comme ?, & et = doivent être encodés lorsqu'ils sont utilisés comme valeurs de paramètres.
  • Utile pour inclure des caractères non-ASCII dans les paramètres de requête d'API REST ou pour passer des URL de redirection en toute sécurité.

Foire aux questions

L'encodage convertit des caractères comme les espaces et les lettres non-ASCII au format hexadécimal %XX, sûr pour une utilisation dans les URL. Le décodage effectue l'opération inverse pour retrouver le texte original lisible.

Utilisez %20 dans les chemins d'URL (selon RFC 3986). Le + n'est utilisé que dans les chaînes de requête application/x-www-form-urlencoded (données de formulaires HTML). En cas de doute, %20 est le choix le plus sûr.

Les caractères non réservés — lettres (A–Z, a–z), chiffres (0–9) et les symboles - _ . ~ — peuvent apparaître dans les URL sans encodage. Tous les autres, y compris les caractères réservés comme & et =, doivent être encodés lorsqu'ils sont utilisés comme valeurs de paramètres.
ツールくん

Anecdote — La naissance de l'URL : Tim Berners-Lee et l'aube du World Wide Web

L'URL a été conçue en 1991 par Tim Berners-Lee, l'inventeur du World Wide Web. Initialement pensée uniquement pour les caractères ASCII, les caractères multi-octets (comme le japonais) et les caractères spéciaux doivent être représentés par l'encodage en pourcentage.

L'URL de la toute première page web sur internet, http://info.cern.ch/hypertext/WWW/TheProject.html, est encore accessible aujourd'hui. Les domaines avec des emojis (ex. : 🍕.ws) sont techniquement possibles et sont convertis en interne en Punycode (le format qui commence par xn--). Bien que les URL puissent théoriquement dépasser 2 000 caractères, les limites pratiques imposées par les navigateurs et les serveurs sont d'environ 2 048 caractères.

Le RFC 3986 définit la spécification des URL, mais la distinction entre %20 (espace) et + (espace) reste une source fréquente de confusion. %20 est la norme URI ; + est utilisé dans le format application/x-www-form-urlencoded des formulaires HTML — le choix dépend du contexte.