Décodeur d'URL

Décodez des URL encodées pour obtenir un texte lisible et ainsi vérifier des liens, formulaires web, paramètres de suivi et exemples de cours sur le fonctionnement du web.

Analyseur d'URL / Inspecteur

Coller une ou plusieurs URLs complètes (une par ligne) pour les décoder en protocole, hôte, chemin, chaîne de requête et fragment, chaque paramètre de requête étant décodé.

Apprendre le codage des URL

Une URL ne peut contenir en toute sécurité que des lettres, des chiffres et un petit ensemble de symboles (- _ . ~). Tout le reste, y compris les espaces, la ponctuation, et les caractères non-anglais, doit être représenté avec le pourcentage-encodage avant qu'il puisse voyager dans une URL.

L'encodage en pourcentage remplace un personnage par un signe en pourcentage suivi de sa valeur d'octet hexadécimal à deux chiffres, en utilisant UTF-8 pour tout ce qui est en dehors de l'ASCII de base. Un espace devient %20, un ampersand devient %26, et un caractère accentué ou non-latin peut devenir plusieurs séquences %XX dans une rangée, puisque UTF-8 le représente comme plus d'un octet.

Des caractères tels que ? & = # et / ont une signification particulière dans une structure URL : ils marquent la chaîne de requête, séparent les paramètres ou introduisent le fragment. Si vos données doivent contenir un de ces caractères comme valeur plutôt que comme structure, encodez-le d'abord, ou le navigateur ou le serveur peut mal lire où une partie de l'URL se termine et le suivant commence.

Le décodage inverse le processus : il lit chaque séquence %XX de nouveau dans le caractère (ou octet) qu'il représente, ce qui est exactement ce que fait l'outil ci-dessus.

  • Encoder une valeur avant de l'ajouter à une chaîne de requête ou à un segment de chemin.
  • Décodez une URL qui vous a été donnée lorsque vous devez la lire ou la déboguer.
  • Décodez seulement le composant spécifique dont vous avez besoin. Le décodage aveuglé d'une URL entière peut transformer une ampère codée en un séparateur de paramètres.
  • Un encodage multi-octets à plus d'une séquence %XX est attendu, pas une erreur.

URL commune Personnages

CaractèreEncodéOù il est utilisé
espace%20Séparateur de mots dans une valeur
!%21
"%22
#%23Démarre le fragment
%%25Démarre une séquence codée en pourcentage
&%26Sépare les paramètres de la requête
'%27
(%28
)%29
+%2BSouvent lu comme un espace dans une chaîne de requête
,%2C
/%2FSépare les segments de chemin
:%3ASuivre le schéma, par exemple https:
;%3B
=%3DAssigne la valeur d'un paramètre de requête
?%3FDémarre la chaîne de requête
@%40
[%5B
]%5D

Cet outil vous a-t-il aidé ?

3.8/5 de 48 Évaluation

Décodez des URL, paramètres de requête, chemins et données web encodés en pourcentage pour vos cours, le débogage et les tests d'API

Un élève copie une adresse web depuis un formulaire en ligne et voit apparaître un texte tel que science%20project%20notes. Un développeur débutant examine une requête API et constate qu'une esperluette présente dans une valeur de recherche apparaît sous la forme %26. Le lien fonctionne, mais il est difficile à lire et à déboguer.

Un outil de décodage d'URL reconvertit les séquences encodées en pourcentage en leurs caractères correspondants. Par exemple, %20 devient généralement une espace, tandis que %26 devient une esperluette.

Le décodage est utile pour comprendre des liens, examiner des paramètres de requête, étudier l'encodage web et diagnostiquer des requêtes mal formées. Il doit être effectué avec précaution, car les caractères réservés peuvent modifier la structure d'une URL une fois décodés.

Cet outil ne permet pas de déterminer si une destination est sûre, correcte ou autorisée. Il se contente de modifier la représentation des caractères encodés. Les élèves et développeurs doivent toujours examiner eux-mêmes l'hôte, le chemin, les paramètres et les valeurs décodées.

À quoi ressemble l'encodage d'URL

Les URL utilisent certains caractères pour séparer leurs différentes parties. Un point d'interrogation peut introduire une chaîne de requête, une esperluette peut séparer des paramètres, et un dièse peut identifier un fragment.

Lorsqu'un de ces caractères doit apparaître comme donnée plutôt que comme séparateur structurel, il peut être encodé en pourcentage. Un signe pourcentage est suivi de deux chiffres hexadécimaux représentant une valeur d'octet.

Valeur encodée Caractère décodé Signification courante
%20 Espace Sépare les mots à l'intérieur d'une valeur
%21 ! Point d'exclamation
%23 # Dièse ou marqueur de fragment
%26 & Esperluette ou séparateur de requête
%2B + Signe plus
%2F / Barre oblique ou séparateur de chemin
%3A : Deux-points
%3D = Signe égal ou séparateur de paramètre
%3F ? Point d'interrogation ou marqueur de requête

Les lettres hexadécimales des séquences en pourcentage ne sont pas sensibles à la casse : %2F et %2f représentent donc le même octet.

Comment décoder une URL

  1. Copiez l'URL ou la valeur encodée. Conservez chaque signe pourcentage et la paire de caractères qui le suit.
  2. Identifiez la partie à examiner. Déterminez s'il s'agit d'une URL complète, d'un chemin, d'un nom de paramètre ou d'une valeur de paramètre.
  3. Collez-la dans le décodeur d'URL. Vérifiez que la saisie a été copiée intégralement.
  4. Lancez le décodage. L'outil convertit les séquences en pourcentage prises en charge.
  5. Examinez le résultat sous forme de texte. N'ouvrez pas automatiquement une destination inconnue.
  6. Comparez la structure et les données. Vérifiez si les points d'interrogation, esperluettes, barres obliques ou signes égal décodés modifient l'apparence de l'adresse.
  7. Vérifiez les caractères multilingues. Assurez-vous que l'encodage de caractères attendu a bien été utilisé.
  8. Conservez la saisie d'origine. Elle peut s'avérer nécessaire pour déboguer un double encodage ou une étape de décodage incorrecte.

Comprendre d'abord les parties d'une URL

Prenons cet exemple :

https://example.edu/search?q=water%20cycle&level=grade%206#results

Ses principales parties sont :

  • Schéma : https
  • Hôte : example.edu
  • Chemin : /search
  • Requête : q=water%20cycle&level=grade%206
  • Fragment : results

Les valeurs de la requête se décodent en « water cycle » et « grade 6 ». L'esperluette structurelle entre les paramètres ne doit pas être confondue avec une esperluette encodée à l'intérieur d'une valeur.

Décoder le bon composant

Les développeurs créent souvent des problèmes en décodant une URL entière alors qu'un seul composant devrait l'être. Les caractères réservés peuvent jouer des rôles différents selon l'endroit où ils apparaissent.

Supposons qu'une requête contienne :

?topic=research%26writing

La valeur encodée représente :

research&writing

L'esperluette fait partie de la valeur du sujet. Si la requête entière est décodée puis analysée de manière incorrecte, l'esperluette peut être prise à tort pour un séparateur introduisant un autre paramètre.

Une application fiable analyse l'URL selon sa structure et décode chaque composant avec une API d'URL appropriée, plutôt que d'utiliser des remplacements de chaînes arbitraires.

Un atelier de débogage d'URL

Étape 1 : commencer par un lien lisible

Les élèves examinent :

https://example.edu/library?topic=space%20science

Ils identifient l'hôte, le chemin, le nom du paramètre et la valeur encodée.

Étape 2 : décoder uniquement la valeur

La valeur space%20science devient space science. Les élèves expliquent pourquoi une espace littérale n'est normalement pas écrite directement dans une URL partagée.

Étape 3 : introduire des caractères réservés

L'enseignant fournit :

?title=Design%20%26%20Technology

Le titre décodé est Design & Technology. Les élèves observent que l'esperluette encodée fait partie du titre plutôt que de séparer des paramètres.

Étape 4 : inverser le processus

Les élèves utilisent l'outil d'encodage d'URL pour préparer une nouvelle valeur, puis la décodent et comparent le résultat.

Étape 5 : diagnostiquer une erreur

Une séquence contient un caractère d'échappement en pourcentage incomplet, tel que %2. Les élèves déterminent pourquoi deux chiffres hexadécimaux sont attendus après le signe pourcentage.

Cas d'usage concrets

1. Lire des paramètres de recherche

Un élève copie un lien de recherche de bibliothèque contenant plusieurs mots encodés. L'URL visible est difficile à interpréter.

L'élève décode les valeurs de la requête et confirme les termes de recherche et filtres inclus. L'hôte est vérifié avant l'ouverture du lien.

Cela l'aide à comprendre comment un site web transmet des informations de recherche d'une page à l'autre.

2. Déboguer une requête API

Un développeur débutant envoie une requête contenant un titre de cours avec une esperluette. Le serveur reçoit le titre sous forme de deux paramètres distincts.

Le développeur examine la requête brute et découvre que l'esperluette n'a pas été encodée en tant que donnée. La valeur est préparée avec une API d'URL standard et testée à nouveau.

Le décodeur aide à expliquer la requête, mais la solution durable passe par un traitement structuré des URL plutôt que par un remplacement manuel.

3. Enquêter sur un lien cassé

Un enseignant reçoit un lien vers un document de classe, mais la destination indique que le fichier est introuvable.

L'URL est examinée et décodée. Un nom de fichier contient une barre oblique qui a peut-être été traitée comme un séparateur de chemin, ou une espace a été mal copiée.

L'enseignant demande un nouveau lien de partage au propriétaire du document plutôt que de modifier à l'aveugle une adresse privée inconnue.

4. Comprendre la soumission d'un formulaire

Des élèves créent un formulaire de recherche simple et observent l'URL après avoir soumis un texte contenant des espaces et de la ponctuation.

Ils décodent les valeurs des paramètres et les comparent à la saisie d'origine du formulaire. La classe discute des raisons pour lesquelles les navigateurs encodent les valeurs avant de les placer dans une URL.

Aucun mot de passe réel, dossier d'élève ou réponse privée n'est utilisé dans cet exercice.

5. Examiner des liens d'analyse

Un lien de newsletter scolaire contient plusieurs paramètres de suivi. Un enseignant souhaite savoir quelles informations y figurent avant de le partager.

L'URL est décomposée en paramètres, et leurs valeurs sont décodées. Les valeurs de suivi inutiles peuvent être retirées, mais seulement si cela ne casse pas la destination requise.

Le lien final est testé plutôt que simplement supposé fonctionnel après une modification manuelle.

6. Découvrir l'encodage d'URL multilingue

Une classe d'informatique teste une courte expression non anglaise dans une URL. Le résultat encodé contient plusieurs séquences en pourcentage, car les caractères UTF-8 peuvent occuper plusieurs octets.

Les élèves décodent la séquence complète et la comparent à l'expression d'origine. La suppression d'un seul octet encodé en pourcentage peut produire un caractère de remplacement ou un texte invalide.

Cette activité démontre qu'un caractère visible ne correspond pas toujours à un seul octet encodé.

7. Diagnostiquer un double encodage

Un développeur s'attend à une espace mais voit %2520. La séquence %25 représente un signe pourcentage : un premier décodage produit donc %20, et un second peut produire une espace.

Le développeur retrace l'endroit où la valeur a été encodée deux fois. Le flux de données est corrigé plutôt que de décoder chaque saisie de manière répétée.

8. Vérifier des destinations de redirection

Un lien contient une autre URL encodée à l'intérieur d'un paramètre tel que redirect ou next.

L'utilisateur décode la valeur en texte brut et vérifie l'hôte de destination réel avant de l'ouvrir. Une adresse encodée ne doit pas être considérée comme fiable simplement parce que sa destination finale est difficile à lire.

Décodage d'URL comparé à d'autres décodeurs

Saisie Encodage probable Outil approprié Exemple décodé
lesson%20notes Encodage en pourcentage d'URL Décodage URL lesson notes
<p> Entités HTML Décodage HTML <p>
SGVsbG8= Base64 Décodage Base64 Hello
u003F Séquence d'échappement Unicode Analyseur JSON ou spécifique au langage ?

Utilisez l'outil de décodage HTML pour les références d'entités, et l'outil de décodage Base64 uniquement lorsque vous savez que les données utilisent ces formats.

Espaces et signes plus

Les espaces sont généralement représentées par %20. Dans l'encodage de requête de type formulaire, un signe plus peut également être interprété comme une espace.

Cela crée une distinction importante :

  • class%20notes se décode généralement en class notes.
  • class+notes peut se décoder en class notes dans le contexte d'une requête de formulaire.
  • Un signe plus littéral peut devoir être encodé en %2B.

Utilisez la méthode de décodage conçue pour le composant et le format spécifiques concernés. Un décodeur de chemin et un décodeur de requête de formulaire peuvent ne pas traiter les signes plus de la même façon.

Caractères multi-octets

L'encodage en pourcentage opère au niveau des octets. Un caractère en dehors de l'ASCII de base peut être représenté par plusieurs octets encodés.

Par exemple, une lettre accentuée ou un caractère arabe peut apparaître sous la forme d'une séquence de plusieurs échappements en pourcentage. Tous les octets requis doivent rester dans l'ordre et être interprétés avec le bon encodage de caractères.

Si le résultat contient des symboles de remplacement, vérifiez si :

  • Un octet encodé est manquant.
  • La séquence a été décodée avec un encodage de caractères incorrect.
  • Le texte a été copié de manière incomplète.
  • La valeur a été décodée trop de fois.
  • Les données source étaient déjà endommagées.

Problèmes courants que cet outil résout

  • Une URL contient des séquences en pourcentage illisibles.
  • Un élève doit examiner des paramètres de recherche.
  • Une valeur de requête d'API contient des espaces ou de la ponctuation encodés.
  • Un lien partagé semble contenir une autre destination encodée.
  • Un développeur soupçonne un double encodage.
  • La soumission d'un formulaire doit être étudiée dans un cours de programmation.
  • Un chemin ou paramètre multilingue est difficile à lire.
  • Un lien cassé peut contenir une valeur mal encodée.

Erreurs courantes de décodage d'URL

Décoder l'URL entière sans la comprendre

Les caractères réservés peuvent modifier la structure une fois décodés. Séparez l'URL en composants et décodez uniquement la valeur visée.

Décoder de manière répétée

Un décodage répété peut transformer des données auparavant sûres en séparateurs actifs ou en chemins inattendus. Cherchez pourquoi plusieurs couches d'encodage existent.

Utiliser un remplacement manuel de texte

Remplacer %20 par des espaces ne traite pas tous les caractères encodés, les séquences UTF-8, les saisies mal formées ni les règles relatives au signe plus. Utilisez un analyseur d'URL structuré ou une API standard dans votre code.

Ouvrir une destination décodée inconnue

Décodez-la d'abord sous forme de texte. Examinez le schéma, le nom d'hôte, le chemin et les paramètres avant de décider de la visiter.

Confondre l'encodage d'URL avec l'encodage HTML

%26 et & peuvent tous deux représenter une esperluette selon le contexte. Choisissez le décodeur en fonction de la représentation réelle.

Ignorer des séquences en pourcentage invalides

Un signe pourcentage doit être suivi de deux chiffres hexadécimaux. Des séquences incomplètes ou invalides peuvent signaler une saisie endommagée.

Placer des mots de passe dans les URL

Les URL peuvent apparaître dans l'historique du navigateur, les journaux, les outils d'analyse, les captures d'écran et les messages partagés. Les identifiants sensibles ne doivent pas figurer dans les chaînes de requête.

Considérations de sécurité

Les valeurs décodées peuvent contenir des caractères ayant une signification particulière. Une barre oblique décodée peut modifier un chemin, une esperluette peut altérer des paramètres, et des chevrons peuvent se transformer en balisage s'ils sont insérés de manière incorrecte dans une page web.

Les applications doivent :

  • Analyser les URL avec des API d'URL standard.
  • Ne décoder que le composant approprié.
  • Valider les noms et valeurs de paramètres attendus.
  • Restreindre les destinations de redirection.
  • Éviter de construire des requêtes de base de données ou des commandes shell à partir de saisies non fiables.
  • Échapper la sortie selon le contexte d'affichage.
  • Rejeter les séquences mal formées lorsque cela est nécessaire.
  • Enregistrer les erreurs sans exposer de données sensibles.

Le décodage n'est pas une désinfection. Il révèle les caractères représentés, mais ne détermine pas s'ils sont sûrs pour du HTML, des chemins de fichiers, des requêtes de base de données ou des redirections.

Confidentialité et usage responsable

Une URL peut contenir des termes de recherche, des identifiants de documents, des adresses e-mail, des codes de classe, des noms de fichiers, des données de suivi et d'autres informations. Le décodage rend ces informations plus faciles à lire, mais ne les supprime pas.

Ne collez pas de liens scolaires privés, de jetons de réinitialisation, d'URL signées, d'adresses de dossiers d'élèves ni de données d'authentification dans un outil externe. Remplacez les valeurs sensibles par des exemples fictifs lors des cours et des démonstrations de débogage.

Avant de partager une capture d'écran d'une URL décodée, retirez les noms de compte, hôtes privés, jetons et identifiants de documents.

Exemple pratique pour développeurs

Les développeurs débutants devraient privilégier les API d'URL structurées. En JavaScript, une valeur de requête peut être examinée ainsi :

const url = new URL(
  "https://example.edu/search?q=water%20cycle"
);

const query = url.searchParams.get("q");

console.log(query);
// water cycle

Cette approche analyse l'URL et renvoie la valeur de paramètre décodée. Elle est généralement plus sûre et plus claire que de découper manuellement la chaîne complète à chaque point d'interrogation, esperluette et signe égal.

Liste de vérification finale

  • La saisie encodée d'origine a été conservée.
  • Le composant d'URL à décoder a été identifié.
  • Les séquences en pourcentage contiennent deux chiffres hexadécimaux valides.
  • Les signes plus ont été interprétés selon le bon contexte.
  • Les caractères multi-octets s'affichent correctement.
  • L'hôte et la destination décodés ont été vérifiés avant l'ouverture.
  • Les caractères réservés n'ont pas accidentellement modifié la structure prévue.
  • Le double encodage a été retracé plutôt que deviné.
  • Aucun mot de passe, jeton ou dossier d'élève n'a été exposé.
  • Le code de l'application utilise des API d'URL structurées lorsque cela est possible.

Outils associés

Utilisez l'outil d'encodage d'URL pour préparer un texte destiné à être utilisé comme composant d'URL, puis décodez-le pour vérifier un exemple de cours.

Si la saisie contient des entités telles que < ou ", utilisez l'outil de décodage HTML. Pour un texte Base64 connu, utilisez l'outil de décodage Base64.

Choisir le bon décodeur évite des transformations inutiles et rend le débogage plus fiable.

Conclusion

Le décodage d'URL convertit des séquences encodées en pourcentage en caractères lisibles. Il aide les élèves à comprendre les adresses web et les développeurs à examiner des valeurs de requête, des requêtes API, du texte multilingue, des redirections et des problèmes de double encodage.

La méthode la plus sûre consiste à identifier le composant d'URL concerné, à ne décoder que ce qui est nécessaire, et à conserver la saisie d'origine. Traitez le résultat comme une donnée qui doit encore être validée.

Un lien décodé lisible est plus facile à examiner, mais cela ne le rend pas automatiquement sûr ou correct. Vérifiez sa structure, sa destination, ses paramètres, la confidentialité et l'encodage de caractères prévu avant de l'utiliser.

Pour les enseignantsPour les étudiants