Décoder et encoder des URL en ligne

Les liens encodés remplis de séquences `%3A` et `%2F` sont impossibles à lire d'un seul coup d'œil. Les URL de suivi, les journaux serveur et les paramètres de rappel cachent leur vrai contenu derrière l'encodage en pourcentage. Les reconvertir à la main est lent et source d'erreurs.

Cet outil gratuit pour décoder et encoder les URL convertit les chaînes dans les deux sens instantanément. Collez n'importe quel texte, choisissez Décoder ou Encoder, puis copiez un résultat propre en un clic. Tout s'exécute dans votre navigateur, vos données ne quittent donc jamais votre appareil.

Traitement 100% côté client
Aucune inscription requise
Conversions illimitées

Conversion d'URL

La conversion en direct s'exécute dans votre navigateur pendant la saisie.

Mode d'encodage

Idéal pour des valeurs uniques comme des paramètres de requête, des cibles de redirection ou des segments de chemin.

0 caractères
0 octets
Le résultat se met à jour instantanément pendant la saisie ou le changement de mode.

Que signifie décoder une URL ?

Le décodage d'URL reconvertit les séquences encodées en pourcentage en leurs caractères lisibles d'origine. Chaque paire `%XX` est traduite à l'aide de sa valeur hexadécimale, de sorte que `%20` devient un espace et `%40` devient @. Le processus est aussi appelé décodage en pourcentage.

L'encodage est l'opération inverse, définie par la RFC 3986, la norme URI publiée en 2005. Elle a remplacé l'ancienne RFC 2396 et régit encore aujourd'hui toutes les adresses web valides.

Le mécanisme s'applique à toute la famille URI, pas seulement aux adresses web. Il couvre aussi les URN et le format de données de formulaire utilisé dans les requêtes HTTP POST.

Qu'est-ce que l'encodage URL et pourquoi est-il nécessaire ?

L'encodage URL consiste à convertir des caractères dans un format `%XX` que les navigateurs et les serveurs peuvent transmettre de façon fiable. Chaque caractère non sûr devient un signe de pourcentage suivi de sa valeur hexadécimale. Sans cela, un espace brut ou un `&` dans une valeur casserait la structure de l'adresse.

Quatre groupes de caractères ne peuvent pas circuler directement dans une URL. Les caractères de contrôle ASCII ne sont pas imprimables, et des caractères réservés comme `?`, `/` et `&` portent une signification structurelle. Des caractères non sûrs comme les espaces et les guillemets provoquent des erreurs d'analyse, tandis que le texte non ASCII sort de l'ensemble autorisé. L'encodage convertit ces quatre groupes en séquences en pourcentage sûres.

La nécessité vient de la façon dont les serveurs analysent les requêtes. Un `&` brut dans la valeur d'un paramètre serait interprété comme le début d'un nouveau paramètre et corromprait silencieusement vos données. L'encodage supprime cette ambiguïté, c'est pourquoi tous les navigateurs, clients API et soumissions de formulaires en dépendent.

Comment décoder une chaîne URL

Le décodeur reconvertit en quelques secondes toute entrée encodée en pourcentage en texte clair. Utilisez-le pour décoder des paramètres d'URL, des chaînes de requête complètes et des adresses entières en un seul passage.

  • Sélectionnez le mode Décoder au-dessus du champ de saisie.
  • Collez la chaîne encodée dans la zone Texte d'entrée.
  • Lancez la conversion pour afficher le texte lisible.
  • Copiez le résultat décodé pour vos journaux, rapports ou sessions de débogage.

La sortie gère correctement les séquences UTF-8 sur plusieurs octets. Des paires comme `%C3%A9` se recombinent en un seul `é` au lieu de deux symboles corrompus. Les commandes rapides en ligne de commande se trompent souvent ici, ce qui rend un outil éprouvé dans le navigateur plus sûr.

Comment encoder une URL

L'encodage convertit les caractères non sûrs au format encodé en pourcentage pour une transmission sûre. Sélectionnez le mode Encoder, collez votre texte puis cliquez sur Encoder l'URL. L'encodeur URL remplace automatiquement chaque caractère réservé ou non sûr.

Les caractères non réservés restent inchangés, de sorte que les parties lisibles de votre texte le restent aussi. Copiez le résultat encodé directement dans votre lien, votre requête API ou votre formulaire.

Exemples de décodage d'URL et signification des résultats

Voir des entrées et des sorties réelles est la façon la plus rapide de comprendre l'encodage en pourcentage. Les exemples ci-dessous couvrent les situations les plus fréquentes rencontrées en pratique.

Exemple 2 - Chaîne encodée deux fois

Le décodage de `%2520` renvoie `%20`, et non un espace. Le couple `%25` représente le signe de pourcentage lui-même, donc il faut décoder l'URL une seconde fois pour obtenir l'espace final.

Exemple 3 - Texte non ASCII

Le décodage de `q=caf%C3%A9` renvoie `q=café`. Les deux couples sont des octets UTF-8 qui se combinent en un seul caractère accentué.

Exemple 4 - Paramètre de requête avec un espace

L'encodage de `city=New York` produit `city=New%20York`. L'espace n'est pas sûr dans une URL, donc l'encodeur le convertit en `%20` avant transmission.

Exemple 5 - Adresse e-mail dans une URL

L'encodage de `user@example.com` produit `user%40example.com`. Le symbole @ est un caractère réservé, et `40` est sa valeur ASCII hexadécimale.

  • Chaque résultat révèle quelque chose de précis sur vos données. Si la sortie décodée contient encore des couples avec `%`, la chaîne a été encodée plusieurs fois et nécessite un autre passage.

Référence des caractères encodés dans les URL

Le tableau ci-dessous liste les caractères que les développeurs convertissent le plus souvent. Gardez-le sous la main lorsque vous lisez des journaux bruts ou construisez manuellement des chaînes de requête.

Caractère
Valeur encodée
Usage courant
espace%20Séparer des mots dans des valeurs
!%21Ponctuation dans des valeurs textuelles
#%23Marqueur de fragment dans les URL
$%24Valeurs monétaires
%%25Le caractère d'échappement lui-même
&%26Sépare les paramètres de requête
+%2BSigne plus dans les valeurs
,%2CListes à l'intérieur d'un paramètre
/%2FSéparateur de chemin
:%3ASéparateur de schéma et de port
;%3BDélimiteur de paramètres
=%3DLie les clés et les valeurs
?%3FCommence la chaîne de requête
@%40Adresses e-mail et identifiants

Les caractères non réservés n'ont jamais besoin d'être encodés. La RFC 3986 en définit exactement 66 : 52 lettres, 10 chiffres, le tiret, le soulignement, le point et le tilde.

Les caractères réservés n'ont besoin d'être encodés que lorsqu'ils sont utilisés hors de leur rôle structurel. Une barre oblique qui sépare des segments de chemin reste littérale, mais une barre dans la valeur d'un paramètre doit devenir `%2F`.

Quand faut-il encoder ou décoder une URL ?

Encodez toute valeur avant de la placer dans une chaîne de requête, un segment de chemin ou une soumission de formulaire. Cela concerne les termes de recherche, les cibles de redirection, les adresses e-mail et tout texte généré par l'utilisateur. Les navigateurs et les serveurs attendent le format `application/x-www-form-urlencoded` pour les soumissions classiques.

Décodez chaque fois que vous devez lire des données qui reviennent dans l'autre sens. Les journaux serveur, exports d'analytique, charges utiles de webhooks et chaînes de référent arrivent tous encodés en pourcentage. Un passage rapide de décodage URL les transforme en texte que vous pouvez rechercher et comparer.

Les équipes marketing et analytique rencontrent le même besoin avec les balises UTM et les liens de campagne. Les noms de campagne contenant des espaces ou `&` doivent être encodés, sinon Google Analytics les divisera en paramètres cassés. Passer la valeur par l'encodeur URL prend quelques secondes et évite des rapports corrompus.

Le développement d'API couvre les deux sens au quotidien. Les points de terminaison REST rejettent ou interprètent mal les requêtes lorsque les paramètres contiennent des espaces bruts, `&` ou des caractères non ASCII. Pour des charges binaires dans les URL, associez cet outil à l' Encodeur/Décodeur Base64 .

decodeURIComponent, encodeURIComponent et encodeURI

JavaScript fournit des fonctions intégrées dans les deux sens, et choisir la mauvaise est un bogue classique. Utilisez `decodeURIComponent` pour décoder les valeurs de paramètres et `encodeURIComponent` pour les encoder. La fonction `encodeURI` préserve les caractères structurels comme `/`, `?` et `&`, ce qui la rend adaptée uniquement aux adresses complètes.

Cet outil prend en charge les deux usages. Utilisez le mode Composant URL pour les valeurs de paramètres et le mode URL complète lorsque vous devez conserver lisible toute la structure de l'adresse.

D'autres langages proposent des équivalents avec la même séparation. Python utilise `urllib.parse.quote` et `unquote`, PHP utilise `rawurlencode` et `rawurldecode`, et Java utilise `URLEncoder` et `URLDecoder`.

Comment les attaquants abusent de l'encodage URL

Les campagnes de phishing utilisent l'encodage en pourcentage pour masquer des destinations malveillantes dans des liens qui paraissent légitimes. Une muraille de séquences `%XX` cache le vrai domaine à une inspection visuelle rapide. Décoder un lien avant de cliquer révèle la cible réelle en quelques secondes.

Les attaquants utilisent aussi le double encodage pour contourner les filtres de sécurité. Un filtre peut bloquer `../` comme traversée de répertoires mais manquer `%252e%252e%252f`, qui se résout en la même séquence en deux passages. OWASP documente cette technique comme une méthode courante d'évasion de filtres. Décoder deux fois une entrée suspecte est une étape classique des revues de sécurité et des tests d'intrusion.

Cet outil est sûr pour inspecter des chaînes hostiles. Le décodage se fait sous forme de texte brut dans votre navigateur, donc rien n'est exécuté, suivi ou demandé.

Pourquoi utiliser ce décodeur et encodeur URL en ligne ?

De nombreux convertisseurs en ligne envoient vos données à un serveur pour les traiter. Ce décodeur URL fonctionne entièrement côté client, donc les chaînes contenant des jetons de session, des clés API ou des données personnelles restent sur votre machine. Cette garantie de confidentialité compte quand vous déboguez du trafic de production.

L'outil est gratuit, sans inscription et sans limite de conversions ni de longueur d'entrée. Décodage et encodage cohabitent dans la même interface, donc changer de sens ne prend qu'un clic. Il fonctionne de la même manière sur navigateur desktop et mobile.

Toolkit Wizard la regroupe avec des utilitaires associés pour le travail de développement quotidien. Inspectez des jetons avec Décodeur et encodeur JWT ou échappez du balisage avec l'outil Échapper / Déséchapper HTML.

Questions fréquentes

Foire aux questions