
Décodeur URL
Décodez n'importe quelle URL percent-encodée avec le Décodeur URL de Qodex. Convertissez des valeurs comme %3A, %20 et %2F en caractères lisibles. Pour encoder des URLs, consultez notre Encodeur URL, ou gérez l'Unicode avec notre Décodeur UTF-8 et notre Décodeur Base64.
Décodeur URL - Documentation
Qu'est-ce que le décodage URL ?
Le décodage URL est le processus de conversion des caractères encodés dans une chaîne URL vers leur forme originale lisible. Dans une URL, certains caractères (comme les espaces ou les symboles spéciaux) sont remplacés par des valeurs percent-encodées pour assurer la compatibilité avec tous les navigateurs et serveurs.
Par exemple :
https%3A%2F%2Fexample.com%2Ffile%20name...devient :
https://example.com/file nameComment fonctionne le décodage URL ?
Quand une URL est encodée, les caractères spéciaux sont remplacés par des signes pourcent (%) suivis de valeurs hexadécimales à deux chiffres. Le décodeur lit la chaîne, identifie ces séquences %xx et les reconvertit en leurs équivalents ASCII ou UTF-8.
Par exemple :
%20 = espace ( )
%3A = deux-points (:)
%2F = barre oblique (/)
Ce processus utilise des fonctions de décodage standard disponibles dans tous les langages de programmation majeurs.
Comment utiliser le Décodeur URL Qodex
Collez votre URL ou chaîne percent-encodée.
Cliquez sur «Décoder».
Obtenez instantanément le texte propre et lisible dans la zone de sortie.
Utilisez «Copier» ou téléchargez le résultat.
Cet outil fonctionne entièrement dans votre navigateur et prend en charge le décodage d'URLs complètes, de chaînes de requête et de fragments de texte encodés.
Tableau de référence du percent-encoding
Voici les caractères percent-encodés les plus fréquents dans les URLs, basés sur la RFC 3986 :
| Encodé | Décodé | Description |
|---|---|---|
| %20 | (espace) | Caractère espace |
| %21 | ! | Point d'exclamation |
| %22 | " | Guillemet double |
| %23 | # | Dièse / identifiant de fragment |
| %24 | $ | Signe dollar |
| %25 | % | Signe pourcent (littéral) |
| %26 | & | Esperluette / séparateur de requête |
| %27 | ' | Apostrophe / guillemet simple |
| %28 | ( | Parenthèse ouvrante |
| %29 | ) | Parenthèse fermante |
| %2A | * | Astérisque |
| %2B | + | Signe plus |
| %2C | , | Virgule |
| %2F | / | Barre oblique / séparateur de chemin |
| %3A | : | Deux-points |
| %3B | ; | Point-virgule |
| %3C | < | Inférieur à |
| %3D | = | Signe égal |
| %3E | > | Supérieur à |
| %3F | ? | Point d'interrogation / début de requête |
| %40 | @ | Arobase |
| %5B | [ | Crochet ouvrant |
| %5C | \ | Barre oblique inverse |
| %5D | ] | Crochet fermant |
| %5E | ^ | Accent circonflexe |
| %60 | ` | Accent grave |
| %7B | { | Accolade ouvrante |
| %7C | | | Barre verticale |
| %7D | } | Accolade fermante |
| %7E | ~ | Tilde |
| + | (espace) | Espace dans application/x-www-form-urlencoded |
Décodage URL dans différents langages de programmation
Voici comment décoder des URLs dans les langages de programmation les plus populaires :
JavaScript
// Decode a full URI (preserves special URI characters) const decoded = decodeURI('https://example.com/path%20with%20spaces'); // Output: https://example.com/path with spaces
// Decode a URI component (decodes everything including :, /, ?) const param = decodeURIComponent('hello%20world%26foo%3Dbar'); // Output: hello world&foo=bar
Python
from urllib.parse import unquote, unquote_plusDecode percent-encoded URL
decoded = unquote('https%3A%2F%2Fexample.com%2Ffile%20name')
Output: https://example.com/file name
Decode form-encoded string (+ as space)
decoded_form = unquote_plus('hello+world%26foo%3Dbar')
Output: hello world&foo=bar
Java
import java.net.URLDecoder;import java.nio.charset.StandardCharsets;
String encoded = "https%3A%2F%2Fexample.com%2Ffile%20name"; String decoded = URLDecoder.decode(encoded, StandardCharsets.UTF_8); // Output: https://example.com/file name
PHP
// Decode percent-encoded string $decoded = urldecode('https%3A%2F%2Fexample.com%2Ffile%20name'); // Output: https://example.com/file name
// Decode without converting + to space $decoded_raw = rawurldecode('hello%20world%2B'); // Output: hello world+
Go
package mainimport ( "fmt" "net/url" )
func main() { decoded, err := url.QueryUnescape("https%3A%2F%2Fexample.com%2Ffile%20name") if err != nil { fmt.Println("Error:", err) return } fmt.Println(decoded) // Output: https://example.com/file name }
Caractères réservés et non réservés dans les URLs (RFC 3986)
Comprendre quels caractères sont réservés et lesquels ne le sont pas explique pourquoi certains caractères sont percent-encodés dans les URLs.
Caractères non réservés (ne nécessitent jamais d'encodage)
Ces caractères peuvent apparaître dans n'importe quelle partie d'une URL sans encodage :
A-Z a-z 0-9 - _ . ~Caractères réservés (ont une signification spéciale dans les URLs)
Ces caractères ont des rôles spécifiques dans la syntaxe URL. Ils doivent être percent-encodés lorsqu'ils sont utilisés en dehors de leur usage prévu :
| Caractère | Rôle dans les URLs |
|---|---|
| : | Sépare le schéma de l'autorité (https:), numéro de port |
| / | Séparateur de chemin |
| ? | Commence la chaîne de requête |
| # | Commence l'identifiant de fragment |
| [ ] | Littéraux d'adresse IPv6 |
| @ | Sépare les informations utilisateur de l'hôte |
| ! | Sous-délimiteur |
| $ | Sous-délimiteur |
| & | Sépare les paramètres de requête |
| ' | Sous-délimiteur |
| ( ) | Sous-délimiteurs |
| * | Sous-délimiteur |
| + | Sous-délimiteur (représente aussi l'espace dans les données de formulaire) |
| , | Sous-délimiteur |
| ; | Sous-délimiteur |
| = | Sépare la clé de la valeur dans les paramètres de requête |
Quand un caractère réservé apparaît dans un composant URL où il ne joue pas son rôle réservé (par exemple, un & littéral dans une valeur de paramètre de requête), il doit être percent-encodé en %26.
Cas d'utilisation pratiques
Débogage d'URLs : inspectez rapidement des paramètres de requête complexes ou cassés.
Nettoyage de données : décodez des données encodées provenant de formulaires, de journaux ou d'APIs.
Développement web : décodez des chaînes avant un traitement ultérieur dans vos applications.
Analyse SEO : comprenez les URLs lisibles par l'humain à partir de versions encodées dans les rapports d'analyse et d'exploration.
Revues de sécurité : inspectez les liens suspects et les entrées obfusquées pour détecter des injections potentielles.
Outils associés
Encodeur URL - Encodez des URLs pour une transmission sécurisée
Décodeur UTF-8 - Décodez du texte encodé UTF-8
Décodeur Base64 - Décodez du contenu encodé en Base64
Bonnes pratiques
Les URLs contiennent souvent plusieurs couches d'encodage. Si après décodage vous voyez encore des %, relancez le décodage.
Ne décodez pas une valeur plus d'une fois, à moins d'être certain qu'elle a été encodée plusieurs fois.
Utilisez cet outil avec notre Encodeur URL pour des tests aller-retour.
Décodez les chaînes de requête pour séparer les paramètres lors du débogage ou de l'analyse.
Dans les données de formulaire (application/x-www-form-urlencoded),
+représente un espace, pas%20.
Frequently Asked Questions
Que signifie %20 dans une URL ?
Quelle est la différence entre decodeURI et decodeURIComponent ?
Comment décoder les paramètres URL en Python ?
Quels types de caractères encodés cet outil peut-il décoder ?
Puis-je décoder plusieurs couches d'encodage ?
Cet outil est-il sûr pour des données confidentielles ?
Que se passe-t-il si je colle une URL normale (non encodée) ?
Quelle est la différence entre %20 et + pour les espaces ?
Related Tools
Related Articles

Testez vos API dès aujourd'hui !
Rédigez en langage naturel, Qodex génère des tests sécurisés et prêts à l'exécution.



