Encodeur/Décodeur URL

Encodez et décodez des URLs et du texte pour un usage web directement dans votre navigateur, avec des résultats mis à jour au fil de la saisie. Prend en charge les encodages Standard et Formulaire, l'Unicode complet et aucun envoi au serveur.

Mode

0 / 10 000

Saisissez ou collez le texte à encoder : le texte encodé pour URL s'affiche au fil de la saisie. Passez à Décoder pour retransformer du texte de type %20 en texte lisible.

Résultat

Le résultat apparaîtra ici...

Comment Utiliser

  1. Saisissez ou collez du texte brut à encoder, ou du texte encodé URL (avec des signes pourcentage) à décoder
  2. Choisissez Encoder ou Décoder au-dessus de la saisie : le résultat s'affiche au fil de la saisie. Ouvrez Paramètres pour choisir le type d'encodage (Standard ou Formulaire)
  3. Copiez le résultat converti depuis la zone de sortie avec le bouton de copie rapide
  4. Basculez entre Encoder et Décoder à tout moment : un résultat valide passe dans la saisie. Une ligne de résumé indique combien de caractères ont été encodés ou, au décodage, comment le nombre de caractères a changé

Comprendre l'encodage d'URL et le percent-encoding

Ce que fait cet outil

Une URL ne peut transporter en toute sécurité qu'un ensemble limité de caractères. Tout ce qui sort des lettres, chiffres et quelques symboles non réservés doit être réécrit en percent-encoding : un signe % suivi de la valeur de l'octet en hexadécimal. Cet outil transforme du texte ordinaire en cette forme encodée et effectue aussi l'opération inverse, en rendant des séquences comme %20 et %26 aux caractères qu'elles représentent.

Deux types d'encodage couvrent les cas réels. L'encodage standard utilise encodeURIComponent de JavaScript : tout caractère est échappé, sauf les lettres, les chiffres et - _ . ! ~ * ' ( ), y compris les caractères structurants comme :, /, ?, # et &, ce qu'il faut pour un fragment isolé tel que la valeur d'un paramètre. L'encodage de formulaire suit la règle application/x-www-form-urlencoded utilisée par le navigateur lorsqu'il envoie un formulaire, et écrit un espace + au lieu de %20.

Quand l'utiliser

Optez pour l'encodage standard dès qu'une valeur s'insère dans une chaîne de requête : un terme de recherche, une adresse e-mail ou une cible de redirection contenant elle-même ?, & ou =. L'encoder empêche ces symboles d'être lus comme la structure de l'URL et de casser le lien. Comme tous les caractères structurants sont échappés, encodez les éléments d'une adresse un par un : encoder une URL complète échapperait aussi ses barres obliques et son point d'interrogation, ce qui n'est juste que si cette URL est elle-même une valeur à l'intérieur d'une autre. L'encodage de formulaire correspond au corps d'une requête POST ou à une charge de formulaire construite à la main, où les espaces s'écrivent + plutôt que %20. Le décodage est tout aussi fréquent : coller un lien encodé issu d'un journal, d'un rapport d'analytique ou d'une chaîne de redirections et lire vers quoi il pointe réellement.

Un exemple concret

Prenons le texte hello world & café. En encodage standard, un espace devient %20, l'esperluette devient %26 et café — puisque é est stocké sur deux octets UTF-8 — devient caf%C3%A9. En encodage de formulaire, ce même espace s'écrit +, ce qui donne hello+world. Une ligne de résumé compte combien de caractères ont changé et quelle part du texte cela représente.

Remarques et cas particuliers

Les caractères réservés (: / ? # [ ] @ ! $ & ' ( ) * + , ; =) ont un sens à l'intérieur d'une URL. Les deux types échappent : / ? # [ ] @ $ & + , ; = et laissent ! ' ( ) * tels quels : encodez donc une valeur avant de la placer dans une chaîne de requête, pas l'URL terminée. L'encodage est défini sur des octets UTF-8, si bien que tout caractère non ASCII se déploie en plusieurs groupes %XX. Évitez d'encoder une URL deux fois : un % isolé faisant déjà partie d'une séquence d'échappement devient %25 et le lien cesse de fonctionner. En cas de doute, décodez d'abord pour vérifier si le texte est brut ou déjà échappé.

Questions fréquentes

Les deux types d'encodage — standard et formulaire —, ainsi que le décodage et le résumé des caractères modifiés, sont accessibles sans limite ni frais. Rien n'est réservé à une offre payante.