👤 Pro — sans publicitéPro
// texte ↔ encodage %20

Encodeur/décodeur URL

Rendez n'importe quel texte sûr à placer dans une URL — ou retransformez un lien truffé de % en quelque chose de lisible. Converti en direct pendant que vous tapez.

Gratuit — utilisation illimitée.

Pourquoi une URL ne peut pas contenir n'importe quoi

Une URL a une grammaire. Le point d'interrogation ouvre la requête, l'esperluette sépare les paramètres, le signe égal associe un nom à une valeur, le dièse saute à un fragment — ces caractères sont de la structure, pas du contenu. Collez une valeur qui les contient sous forme brute, et l'URL change discrètement de sens : cherchez fish & chips sans encodage, et tout ce qui suit l'esperluette est lu comme un tout nouveau paramètre, donc le pauvre serveur cherche fish tout seul. L'encodage pourcent est la porte de sortie — chaque octet gênant est écrit sous forme d'un signe pourcent suivi de deux chiffres hexadécimaux, %20 pour une espace étant le plus célèbre. Les lettres accentuées et les emoji deviennent chacun plusieurs octets de ce genre, ce qui explique pourquoi un texte non anglais se transforme en suites de pourcents étonnamment longues. C'est normal, ce n'est pas de la corruption.

Décoder : lire ce qu'un lien dit vraiment

Le mode décodage se rend utile sur les liens créés par d'autres. Les liens de newsletter et de publicité enveloppent régulièrement la vraie destination à l'intérieur d'un paramètre url= d'un traqueur de clics — décodez le tout, et la vraie cible apparaît en texte clair, ce qui vaut la peine avant de faire confiance à un lien inconnu. C'est aussi le moyen rapide de lire ce qu'un formulaire a réellement soumis ou ce qu'un appel d'API demandait vraiment. Un schéma à reconnaître : si le texte décodé contient encore des séquences comme %2520, la valeur a été encodée deux fois — décodez une fois de plus, et cela se résout. Le double encodage est tout autant le bug classique dans l'autre sens, donc en construisant des liens, encodez chaque valeur exactement une fois, au tout dernier moment avant d'assembler l'URL.

Construire des liens à la main

L'usage principal du côté encodage, c'est de construire des liens en dehors d'un langage de programmation — modèles de publipostage, formules de tableur, macros de support, tests rapides d'API. La recette fiable : encodez chaque valeur seule, puis assemblez les morceaux vous-même avec les ? & = littéraux. C'est aussi pourquoi le mode valeur encode même les slashs : à l'intérieur d'une valeur, un slash n'est qu'un caractère comme un autre. Cet outil est gratuit et sans limite, comme tout notre ensemble d'outils pour développeurs. Et une astuce pour ce que vous trouvez à l'intérieur de liens décodés : un mur de lettres et de chiffres se terminant par = est généralement du Base64 — collez-le dans notre décodeur Base64 — et une longue valeur avec deux points au milieu est très probablement un jeton pour le décodeur JWT.

Deux types d'encodage — choisissez le bon

Encoder une valeur échappe tout ce qui a une signification particulière dans une URL (y compris / ? & =) — utilisez ce mode pour un texte isolé destiné à une chaîne de requête, comme un terme de recherche. Encoder une URL complète n'échappe que les caractères qui ne peuvent absolument pas figurer dans une URL (comme les espaces) et laisse intacte la structure de l'URL elle-même. Se tromper de mode est la cause classique des liens cassés.

Pourquoi les espaces s'affichent-ils parfois sous forme de + au lieu de %20 ?

Une ancienne convention des formulaires web encode les espaces en +. Le standard moderne est %20. Le décodeur ici comprend les deux.

Mon texte est-il envoyé quelque part ?

Non — tout se passe entièrement dans votre navigateur en JavaScript pur. Rien n'est téléversé.

Convertburda — conversions universelles