URL : XML Decode

Décodez et formatez du XML depuis une chaîne URL encodée.

URL Encodée

Décodage

Options

Résultat

XML Décodé

Guide complet du décodage XML URL : retrouver la lisibilité de vos données XML

Pourquoi j'ai besoin de décoder du XML depuis les URLs

Dans mon travail quotidien d'intégration de systèmes, je rencontre fréquemment du XML transmis via URLs — intégrations SOAP, callbacks de paiement, APIs legacy, webhooks de systèmes enterprise. Ces chaînes %3C%3Fxml%20version... sont incompréhensibles sans décodage. Cet outil transforme instantanément ces données encodées en XML lisible, formaté et validé, me permettant de déboguer efficacement les échanges entre systèmes.

Fonctionnalités de cet outil

🔓 Décodage complet

Transforme toutes les séquences %XX en caractères originaux. Gère correctement UTF-8 pour les accents et caractères internationaux.

✅ Validation XML

Vérifie que le XML décodé est bien formé (well-formed). Détecte les erreurs de syntaxe : balises non fermées, attributs malformés.

📐 Formatage intelligent

Indente automatiquement le XML minifié pour une lecture claire. Respecte la structure hiérarchique des éléments.

📦 Préservation totale

Déclaration XML, namespaces, sections CDATA, commentaires, instructions de traitement — tout est préservé fidèlement.

Comment utiliser cet outil

  1. Collez le XML encodé — La chaîne %3C%3Fxml... dans le panneau de gauche
  2. Cliquez « Décoder XML » — Le XML original apparaît dans l'éditeur
  3. Formatez si nécessaire — « Formater XML » indente le résultat
  4. Exportez — Copiez ou téléchargez le fichier .xml

Référence des encodages XML courants

  • %3C → < (ouverture de balise)
  • %3E → > (fermeture de balise)
  • %26 → & (esperluette, début d'entité)
  • %22 → " (guillemet double)
  • %27 → ' (apostrophe)
  • %3F → ? (déclaration <?xml)
  • %2F → / (balise fermante)
  • %3D → = (attributs)

Cas d'usage concrets

J'utilise cet outil pour déboguer les callbacks SOAP des passerelles de paiement, analyser les requêtes XML dans les logs serveur Apache/Nginx, décoder les paramètres de retour des APIs enterprise (SAP, Oracle), et inspecter les messages SAML dans les flux d'authentification SSO. Tout le traitement reste local dans votre navigateur.

Questions fréquentes

Le XML décodé est sur une seule ligne — comment le rendre lisible ?

Cliquez sur « Formater XML » après le décodage. Le XML est souvent minifié (tous les espaces et retours supprimés) avant l'encodage URL pour réduire la taille de la requête.

Le formatage :

  • Ajoute l'indentation selon la hiérarchie
  • Place chaque élément sur sa propre ligne
  • Préserve le contenu textuel des éléments

Le décodage échoue avec « XML invalide » — comment diagnostiquer ?

Désactivez « Valider XML » pour voir le résultat brut du décodage. Plusieurs causes possibles :

  • Ce n'est pas du XML — Vérifiez que l'input est bien du XML encodé
  • XML tronqué — L'URL a pu être coupée, manquant la fin du document
  • Erreur dans le source — Balise non fermée, attribut sans guillemets, caractère illégal
  • Double encodage — %25 au lieu de % indique que l'encodage a été appliqué deux fois

Puis-je décoder du XML extrait des logs serveur Apache/Nginx ?

Oui, c'est un cas d'usage fréquent ! Les logs HTTP encodent automatiquement les paramètres de query string.

Procédure :

  • Repérez le paramètre contenant le XML (souvent après ?xml= ou &data=)
  • Extrayez la valeur encodée (de %3C jusqu'à la fin)
  • Collez dans cet outil et décodez

Attention : si le log contient des espaces encodés en +, remplacez-les par %20 avant le décodage.

Les sections CDATA et les commentaires XML sont-ils préservés ?

Oui, tout est préservé fidèlement :

  • CDATA — <![CDATA[...]]> est traité comme texte brut, le contenu n'est pas interprété
  • Commentaires — <!-- ... --> sont conservés
  • Instructions de traitement — <?target ...?> intactes
  • Déclaration XML — <?xml version="1.0"?> préservée

Le décodage URL est une opération au niveau des caractères, il ne modifie pas la sémantique XML.

Comment gérer le double encodage (%25 au lieu de %) ?

Le double encodage arrive quand le XML a été encodé deux fois (certains frameworks le font automatiquement).

Signes de double encodage : %253C au lieu de %3C, %2522 au lieu de %22.

Solution : décodez une première fois, prenez le résultat (qui contiendra encore des %XX), et décodez à nouveau. Le XML original apparaîtra au deuxième décodage.

Les namespaces XML (xmlns) sont-ils correctement gérés ?

Oui, les namespaces sont traités comme du texte ordinaire et parfaitement préservés.

Ce qui est conservé :

  • Déclarations xmlns et xmlns:prefix
  • Préfixes sur les éléments (soap:Envelope)
  • Préfixes sur les attributs
  • URIs de namespace complets

Aucune manipulation spéciale n'est nécessaire — le décodage URL opère au niveau des caractères.

Le décodage gère-t-il les caractères accentués et Unicode ?

Oui ! L'outil utilise decodeURIComponent() qui gère correctement UTF-8.

  • Accents — é (%C3%A9), è, à, ñ sont reconstruits
  • Caractères asiatiques — Chinois, japonais, coréen supportés
  • Symboles — €, £, •, etc.

Important : si le XML original utilisait un encodage différent (ISO-8859-1), les caractères peuvent apparaître corrompus. Vérifiez la déclaration encoding dans le XML.

Mes données XML sont-elles transmises à un serveur ?

Non, tout le traitement est 100% local :

  • Le décodage utilise decodeURIComponent() de JavaScript
  • Aucune requête réseau n'est envoyée
  • Vérifiable dans les DevTools (onglet Network)
  • Fonctionne même hors ligne

C'est sécurisé pour les données sensibles : messages SOAP avec credentials, requêtes de paiement, etc.