Encodeur URL

Convertissez instantanément n'importe quelle chaîne ou URL au format percent-encoding pour une transmission sécurisée via des requêtes HTTP et des paramètres d'URL.

Qu'est-ce que l'encodage URL ?

L'encodage URL, également appelé percent-encoding, est une technique permettant de convertir des caractères dans un format transférable en toute sécurité sur le web. Les URL sont limitées à un sous-ensemble spécifique de caractères ASCII. Les caractères spéciaux — tels que les espaces, esperluettes (&), signes égale, barres obliques (/) et les caractères non-ASCII Unicode — doivent être encodés pour être intégrés correctement dans une URL.

Le processus remplace le caractère non sécurisé par un signe pourcentage (%) suivi de deux chiffres hexadécimaux représentant la valeur de l'octet (ASCII ou UTF-8). Par exemple, un espace ( ) devient %20, une esperluette (&) devient %26, et une barre oblique (/) devient %2F.

Cette norme a été définie par l'Internet Engineering Task Force (IETF) dans la spécification RFC 3986, régissant la syntaxe des URI (Uniform Resource Identifiers). Respecter cette norme garantit que vos URL seront parfaitement interprétées par tous les navigateurs, serveurs, APIs et clients HTTP, quel que soit le langage ou le système d'exploitation utilisé.

Il existe deux variantes courantes : l'encodage URL classique (pour les chaînes de requête, où l'espace devient +) et l'encodage de composant URI (plus strict, où l'espace devient %20). Notre outil utilise la fonction urlencode() de PHP, conforme au standard application/x-www-form-urlencoded, largement utilisé dans les formulaires web et les APIs.

Comment utiliser cet encodeur URL

  1. Saisissez votre texte : Dans la zone de texte de gauche, tapez ou collez la chaîne, l'URL ou le paramètre que vous souhaitez encoder.
  2. Cliquez sur "Encoder l'URL" : L'outil traitera instantanément votre entrée et affichera le résultat encodé dans la zone de droite.
  3. Copiez le résultat : Utilisez le bouton Copier le résultat pour enregistrer la chaîne encodée dans votre presse-papiers, prête à être utilisée dans votre code ou votre client API.
  4. Effacez pour recommencer : Cliquez sur le bouton Effacer pour réinitialiser les zones et effectuer une nouvelle conversion.

Cet outil fonctionne entièrement côté serveur via PHP et gère tous les caractères Unicode, y compris l'arabe, le chinois, le japonais, le cyrillique et les emojis, qui seront correctement convertis en séquences d'octets UTF-8.

Pourquoi l'encodage URL est-il crucial ?

L'encodage URL est une pratique fondamentale du développement web pour plusieurs raisons :

  • Paramètres de requête : Lors de la création d'URL dynamiques (ex: ?recherche=hello world&lang=fr), les caractères spéciaux doivent être encodés sous peine de rompre la structure de l'URL et d'entraîner des erreurs côté serveur.
  • Requêtes API : Les APIs RESTful et GraphQL reçoivent souvent des données via des paramètres d'URL. Il est impératif d'encoder toute donnée utilisateur (noms d'utilisateurs, filtres, requêtes) pour éviter les erreurs d'analyse et les tentatives d'injection.
  • Formulaires : Si les formulaires HTML en method="GET" encodent les valeurs automatiquement, la construction manuelle d'URL en JavaScript ou PHP nécessite un encodage explicite via encodeURIComponent() ou urlencode().
  • Internationalisation (i18n) : Les URL contenant des caractères non-ASCII (accents, alphabets étrangers) doivent être encodées pour garantir leur transport et leur compréhension universelle par tous les clients HTTP.
  • Sécurité : Un encodage rigoureux aide à prévenir certaines vulnérabilités, en empêchant l'insertion malveillante de caractères de contrôle ou de séquences spéciales visant à manipuler la logique serveur.

Exemples d'encodage URL

Voici quelques exemples illustrant la transformation des caractères via l'encodage :

Avant (Texte brut)
bonjour tout le monde
https://exemple.com/recherche?q=chats & chiens
[email protected]
prix=49,99€
naïve résumé
Après (Encodé URL)
bonjour+tout+le+monde
https%3A%2F%2Fexemple.com%2Frecherche%3Fq%3Dchats+%26+chiens
user%40email.com
prix%3D49%2C99%E2%82%AC
na%C3%AFve+r%C3%A9sum%C3%A9

Notez comment l'espace devient +, les signes de ponctuation sont transformés, et les caractères non-ASCII (comme € ou é) sont convertis en représentations multi-octets. C'est le format attendu par les serveurs web pour le traitement des requêtes.

Si vous devez effectuer l'opération inverse et décoder une chaîne, utilisez notre outil de décodage URL.