Gratuit · Sans inscription

Encodeur / Décodeur URL

Percent-encodez du texte pour l'utiliser sans risque dans les URL et query strings — ou décodez les séquences % en texte lisible.

L'encodage suit les règles « composant » (comme encodeURIComponent en JavaScript) : chaque caractère réservé est échappé. Au décodage, + est traité comme une espace, comme dans les query strings.

Traité en mémoire — jamais stocké, aucun compte requis.

Comment fonctionne le percent encoding

Les URL n'autorisent qu'un jeu limité de caractères. Tout le reste — espaces, accents, &, =, ?, # — doit être percent-encodé : les octets UTF-8 du caractère sont écrits en paires hexadécimales %XX. Une espace devient %20, é devient %C3%A9.

La subtilité est le contexte : des caractères comme & et = sont légaux dans une URL mais servent de séparateurs de query string. Encoder une URL complète et encoder une valeur de paramètre sont deux opérations différentes — cet outil applique les règles « composant » (comme encodeURIComponent en JavaScript), ce qu'il faut pour des valeurs individuelles.

Le piège classique est le double encodage : encoder une valeur déjà encodée transforme %20 en %2520. Si une valeur décodée contient encore des séquences %, elle a probablement été encodée deux fois quelque part dans la chaîne.

Une query string cassée casse l'API

ContinuumNexus appelle vos endpoints exactement comme configurés — query strings encodées comprises — et vous alerte quand les réponses dérapent.

Questions fréquentes

Quelle différence entre encodeURI et encodeURIComponent ?
encodeURI préserve les caractères structurels des URL (/, ?, &, =) car il attend une URL complète. encodeURIComponent les échappe aussi, car une valeur de paramètre ne doit pas casser la query string qui l'entoure. Cet outil se comporte comme encodeURIComponent.
Pourquoi une espace devient-elle parfois + au lieu de %20 ?
La convention + vient de l'ancien format application/x-www-form-urlencoded des formulaires HTML. En percent encoding moderne, une espace est %20. Au décodage, cet outil accepte les deux et traite + comme une espace.
Qu'est-ce que le double encodage et pourquoi pose-t-il problème ?
Le double encodage survient quand une valeur déjà encodée est encodée à nouveau : %20 devient %2520. Le serveur ne décode alors qu'une couche et voit un %20 littéral dans les données. Encodez exactement une fois, au dernier moment avant de construire l'URL.
Faut-il encoder toute l'URL ou seulement les paramètres ?
Encodez chaque valeur dynamique individuellement avant de l'insérer dans l'URL. Encoder l'URL assemblée entière échapperait aussi les caractères structurels (/, ?, &) et la casserait.