Encodage 🔒 Fonctionne dans votre navigateur — aucune donnée envoyée

Décodeur d'URL

Collez une URL ou une query string encodée en pourcent et lisez-la décodée au fil de la frappe, caractères UTF-8 compris.

Entrée
Sortie

Décoder du texte encodé pour URL

Une URL ne peut transporter qu'un jeu de caractères limité : tout le reste est encodé en pourcent, qu'il s'agisse d'espaces, d'accents, d'écritures non latines ou des caractères qui ont un sens particulier dans une URL, comme &, = et ?. Fichiers de log, paramètres de redirection, balises UTM et erreurs d'API regorgent de ces séquences, et les décoder est le moyen le plus rapide de voir ce qui a réellement été envoyé.

Cette page ouvre l'encodeur et décodeur d'URL configuré pour décoder au fil de la frappe. Tout s'exécute dans votre navigateur.

Schéma : « a b&c=é » encodé caractère par caractère en « a%20b%26c%3D%C3%A9 ».CaractèreOctets UTF-8Encodéa61a␣20%20b62b&26%26c63c=3D%3DéC3 A9%C3%A9Conservés : lettres, chiffres, - _ . ~Échappé en %XX
Les lettres passent telles quelles. L'espace et les caractères réservés & et = deviennent %20, %26 et %3D, et le é est d'abord converti en ses deux octets UTF-8, C3 et A9, écrits chacun sous la forme %XX.

Séquences encodées courantes

EncodéDécodéRemarque
%20 ou +espace+ ne signifie espace que dans les données de formulaire
%2F/Une barre oblique à l'intérieur d'une valeur de paramètre
%3F %3D %26? = &Syntaxe de query string utilisée comme donnée
%25%Un signe pourcent littéral, ou l'indice d'un double encodage
%C3%A9éDeux octets UTF-8 pour un seul caractère
%E2%82%AC€Trois octets UTF-8

URL doublement encodées

Quand une URL est placée dans une autre URL, par exemple comme paramètre redirect ou url, elle est souvent encodée deux fois. On la reconnaît aux %25 omniprésents : %252F est un %2F encodé, lui-même une barre oblique encodée. Décodez, vérifiez s'il reste des %25, et décodez encore jusqu'à ce qu'ils disparaissent.

Quand le décodage échoue

Le décodeur applique les mêmes règles que la fonction decodeURIComponent des navigateurs. Il signale une erreur si un signe pourcent est suivi d'autre chose que deux chiffres hexadécimaux, comme dans 100%, ou si les octets ne forment pas de l'UTF-8 valide, ce qui arrive avec de très vieux systèmes qui encodaient le texte en Latin-1 (%E9 pour é au lieu de %C3%A9).

Décoder une URL dans le code

  • JavaScript : decodeURIComponent(s.replace(/\+/g, ' '))
  • Python : urllib.parse.unquote_plus(s)
  • PHP : urldecode($s)
  • Java : URLDecoder.decode(s, StandardCharsets.UTF_8)

Pour examiner chaque paramètre d'une URL, décodez d'abord toute la query string. Pour les valeurs Base64 trouvées dans des URL, qui se terminent souvent par %3D, décodez-les ici puis passez-les au décodeur Base64.

Guides associés