Outil développeur

Encodeur / Décodeur URL en ligne

Convertissez les caractères spéciaux d'une URL en séquences percent-encoded (%XX) et inversement. Encodez des paramètres de requête ou décodez des URL illisibles. Gratuit, sans inscription.

Temps réel

Exemples

🔒 Vos données ne quittent jamais votre navigateur

100% sécurisé

Vos fichiers ne sont jamais partagés

Ultra-rapide

Traitement en quelques secondes

Confidentialité

Suppression automatique après 1h

Comment encoder et décoder des URL

1

Collez votre URL ou texte

Entrez l'URL ou le texte que vous souhaitez encoder ou décoder dans le panneau d'entrée.

2

Choisissez votre encodage

Cliquez sur « Encoder » pour l'encodage de composant, « Encodage complet » pour l'encodage d'URL complète, ou « Décoder » pour décoder une chaîne percent-encodée. Activez le mode temps réel pour des résultats instantanés.

3

Copiez le résultat

Le résultat encodé ou décodé apparaît dans le panneau de sortie. Cliquez sur « Copier » pour le copier, ou « Inverser » pour utiliser la sortie comme nouvelle entrée.

Pourquoi l'encodage URL existe

Les URL ne peuvent contenir qu'un ensemble limité de caractères ASCII. La RFC 3986 définit les caractères non réservés (A-Z, a-z, 0-9, -, _, ., ~) qui peuvent apparaître tels quels dans les URL. Tous les autres caractères doivent être percent-encodés pour éviter l'ambiguïté.

Sans encodage, des caractères comme & et = seraient confondus avec la structure de l'URL (séparateurs de paramètres de requête). Les espaces, les caractères non-ASCII et les symboles spéciaux doivent tous être encodés pour créer des URL valides.

Caractères réservés vs non réservés

Les caractères réservés (:, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, =) ont une signification spéciale dans les URL. Ils ne doivent être encodés que lorsqu'ils sont utilisés en dehors de leur fonction réservée — par exemple, un / dans une valeur de paramètre doit être encodé en %2F.

Les caractères non réservés (lettres, chiffres, -, _, ., ~) n'ont jamais besoin d'être encodés. Les encoder est valide mais inutile et rend les URL plus longues.

encodeURI vs encodeURIComponent

Utilisez encodeURI() pour encoder une URL complète — il préserve ://, ?, #, & et les autres caractères structurels. Exemple : encodeURI('https://example.com/path?q=hello world') donne 'https://example.com/path?q=hello%20world'.

Utilisez encodeURIComponent() pour encoder une seule valeur de paramètre — il encode tout, y compris & et =. Exemple : encodeURIComponent('price=10&tax=2') donne 'price%3D10%26tax%3D2'. C'est ce dont vous avez besoin pour les données de formulaire et les paramètres d'API.

Pièges courants

Le double encodage est l'erreur la plus courante : encoder une URL déjà encodée transforme %20 en %2520. Vérifiez toujours si votre entrée est déjà encodée avant de l'encoder à nouveau.

Le signe + est une autre source de confusion. Dans les chaînes de requête (application/x-www-form-urlencoded), + signifie espace. Mais dans le composant chemin d'une URL, + est littéral. decodeURIComponent ne décode PAS + en espace — vous devez d'abord remplacer + par %20 si vous traitez des données de formulaire.

Encodeur / Décodeur URL en ligneQuestions fréquentes

Qu'est-ce que l'encodage URL ?

L'encodage URL (percent-encoding) remplace les caractères spéciaux et non-ASCII par des séquences commençant par %. Par exemple, un espace devient %20, « é » devient %C3%A9. C'est nécessaire car les URL ne peuvent contenir que certains caractères ASCII.

Quelle est la différence entre encodeURI et encodeURIComponent ?

encodeURI encode une URL complète en préservant les caractères structurels (://?#&=). encodeURIComponent encode un composant individuel (valeur de paramètre) en encodant TOUS les caractères spéciaux, y compris &, = et /. Utilisez encodeURIComponent pour les valeurs de paramètres et encodeURI pour des URL entières.

Pourquoi les espaces deviennent-ils %20 ou + ?

Dans le standard URL (RFC 3986), un espace est encodé en %20. Dans les formulaires HTML (application/x-www-form-urlencoded), un espace devient +. Les deux sont courants et la plupart des serveurs acceptent les deux.

Mes données sont-elles envoyées sur un serveur ?

Non. L'encodage et le décodage se font entièrement dans votre navigateur.

L'outil gère-t-il les caractères Unicode ?

Oui. Les caractères Unicode sont d'abord convertis en UTF-8, puis chaque octet est percent-encodé. Par exemple, « 日 » (3 octets en UTF-8) devient %E6%97%A5.

Quand ai-je besoin d'encoder une URL ?

Vous devez encoder quand vous passez des données dans les paramètres d'une URL (ex: termes de recherche, noms de fichiers), quand vous construisez des URL dynamiquement dans votre code, ou quand vous intégrez des URL dans d'autres URL (ex: redirections).

Outils similaires