Ce que fait ce encodeur et décodeur d'URL
Cet outil en ligne vous permet d'encoder du texte brut en chaîne percent-encodée conforme à la RFC 3986, et de décoder une URL encodée pour retrouver le texte d'origine. Deux modes sont disponibles : **encodeURI**, qui préserve les caractères réservés (/, ?, &, =, #) utiles à la structure de l'URL, et **encodeURIComponent**, qui encode tout sans exception — le bon choix pour les valeurs de paramètres de requête. À noter que les caractères accentués du français (é, è, ê, ç) occupent deux octets en UTF-8, ce qui génère deux séquences %XX par caractère ; cette version française du décodeur gère ces multi-octets correctement. Côté performances, l'encodage percent-encoding peut tripler la taille d'un caractère non-ASCII (1 octet → 3 caractères %XX). 100 % dans le navigateur — vos données ne quittent jamais votre machine. Pas d'upload, pas de tracking, pas de logs serveur.
Fonctionnalités
- Double mode encode/decode. Basculez entre l'encodage et le décodage d'URL en un clic — idéal pour encoder des paramètres de requête ou déboguer une URL reçue dans un log.
- encodeURI vs encodeURIComponent. Choisissez le mode composant pour encoder les caractères réservés (/, ?, &, =, #) comme valeurs de paramètre. Consultez la MDN — encodeURIComponent pour la référence complète.
- Gestion UTF-8 multi-octets. Les caractères accentués et les emojis sont encodés octet par octet selon UTF-8, garantissant une compatibilité totale avec tous les serveurs HTTP.
- Détection du double encodage. Si votre URL contient %2520 au lieu de %20, vous êtes victime du double encodage. L'outil décode correctement pour révéler la valeur d'origine.
- Confidentialité totale. Tout le traitement s'effectue dans votre navigateur via JavaScript. Aucune donnée — tokens, e-mails, PII — n'est envoyée à un serveur externe.
- Copie en un clic. Copiez le résultat directement dans le presse-papiers sans sélectionner manuellement le texte, pour l'intégrer immédiatement dans votre code ou votre requête.
Comment utiliser le encodeur et décodeur d'URL
Sélectionnez l'onglet **Encoder** ou **Décoder**, collez votre texte, choisissez le mode si nécessaire, puis copiez le résultat.
- Choisissez le mode. Cliquez sur l'onglet « Encoder » pour transformer du texte brut en chaîne percent-encodée, ou « Décoder » pour faire l'inverse.
- Collez votre texte. Saisissez ou collez la valeur à traiter. Par exemple, une valeur de paramètre comme
redirect_uri=https://example.com/callback?lang=fr. - Sélectionnez le mode composant si besoin. Cochez « Encoder en composant » pour encoder / ? & = # — obligatoire pour les valeurs de paramètres. En JavaScript :
encodeURIComponent('a b&c=d'). En Python :from urllib.parse import quote; quote('a b&c=d'). - Copiez le résultat. Cliquez sur « Copier » pour mettre le résultat dans votre presse-papiers, prêt à coller dans votre code ou votre navigateur.
Cas d'usage courants
- Paramètres OAuth et redirect URI. Lors de la construction d'un flux OAuth 2.0, le paramètre
redirect_uridoit être encodé en composant pour que les caractères : et / ne cassent pas l'URL. Cet outil encode la valeur en un clic. - Débogage de logs HTTP. Un log serveur contenant des séquences comme %2520 indique un double encodage. Décodez l'URL ici pour retrouver la valeur d'origine et corriger le pipeline côté back-end.
- Construction de liens de suivi analytique. Les paramètres UTM (utm_source, utm_campaign) contenant des espaces ou des caractères spéciaux doivent être encodés avant d'être intégrés dans une URL de campagne — par exemple pour une newsletter envoyée depuis Montréal.
- Développement Python et PHP. Vérifiez rapidement le résultat de
urllib.parse.quote()en Python ouurlencode()en PHP sans avoir à lancer un interpréteur. Si vous encodez aussi des données binaires, notre [encodeur et décodeur Base64](/fr/base64/) complète ce flux. - Génération d'URL pour QR codes. Avant de générer un QR code avec un lien contenant des paramètres dynamiques, encodez d'abord les valeurs pour garantir que le QR code pointe vers une URL valide. Consultez notre [générateur de QR Code](/fr/qr-code-generator/) pour l'étape suivante.
Questions fréquentes
Quelle différence entre encodeURI et encodeURIComponent ?
encodeURI laisse intacts les caractères réservés (/, ?, &, =, #, :) car ils font partie de la structure d'une URL. encodeURIComponent les encode tous — c'est le bon choix lorsqu'une valeur de paramètre contient ces caractères. En pratique, utilisez toujours encodeURIComponent pour les valeurs, jamais pour l'URL entière.
Pourquoi un espace devient-il %20 dans une URL mais + dans un formulaire HTML ?
La RFC 3986 définit %20 comme l'encodage d'un espace dans un chemin ou une requête d'URL. En revanche, le type MIME application/x-www-form-urlencoded (utilisé dans les corps de formulaires HTML) remplace l'espace par +. Ces deux formats ne sont pas interchangeables — mélanger les deux est une source fréquente de bugs.
Qu'est-ce que le double encodage et comment l'éviter ?
Le double encodage survient quand une URL déjà encodée est encodée une seconde fois : %20 devient %2520. Cela arrive souvent dans les pipelines qui n'identifient pas correctement les valeurs déjà traitées. Décodez d'abord la valeur suspecte ici pour vérifier, puis n'encodez qu'une seule fois à la source.
Mes données sont-elles transmises à un serveur ?
Non. Tout le traitement se fait dans votre navigateur via JavaScript. Vos tokens, adresses e-mail ou autres données sensibles ne quittent jamais votre machine — pas de requête réseau, pas de log serveur, pas de cookie.
Comment encoder une URL en Python ou en PHP ?
En Python, utilisez from urllib.parse import quote; quote('a b&c=d', safe=''). En PHP, la fonction urlencode() encode une chaîne pour un usage dans les paramètres de requête. Cet outil vous permet de valider le résultat attendu sans exécuter de code.
Les caractères accentués français sont-ils bien gérés ?
Oui. Les caractères comme é, è, ê ou ç occupent deux octets en UTF-8 et produisent deux séquences %XX chacun. L'outil encode et décode ces multi-octets fidèlement, ce qui est essentiel pour les URL contenant du contenu en langue française.