Comment encoder, décoder et parser une URL ?
Il vous faut mettre une phrase de recherche dans un lien. Vous avez copié une URL avec des signes pourcentage partout et vous voulez lire ce qu'il y a vraiment dedans. Vous déboguez une API et la query string ressemble à un mur de %20 et &. Cet outil couvre les trois.
Trois modes en un seul endroit : Encode transforme du texte brut en fragment d'URL sûr, Decode inverse, Parse scinde une URL complète en ses parties (scheme, host, port, path, query, fragment) et dépose les paramètres de requête dans un tableau avec gestion appropriée des doublons, valeurs manquantes et clés encodées.
Tout s'exécute dans votre navigateur. Pas d'appels réseau, pas de logs, pas de copies laissées derrière.
Comment l'utiliser
- Choisissez un mode en haut : Encode, Decode ou Parse. La zone d'entrée change son indication en conséquence.
- En mode Encode, choisissez une stratégie : encodeURI (encode seulement les caractères non sûrs, laisse les caractères réservés comme `?&=` tranquilles), encodeURIComponent (encode la valeur d'un seul paramètre de requête), ou strict (le plus agressif, encode aussi `! * ' ( )`).
- En mode Decode, collez une string encodée en pourcent. L'outil signale les séquences malformées comme `%E0%A4` avec une erreur claire au lieu de planter silencieusement.
- En mode Parse, collez une URL complète comme `https://user:pass@example.com:8443/api/v1/items?a=1&a=2&q=hello%20world&flag#section`. Vous obtenez un tableau avec scheme, username, password, host, port, path, query, fragment, plus le path scindé en segments et la query scindée en lignes clé/valeur.
- Cliquez sur Copy pour copier la sortie. Cliquez sur Load sample pour remplir la zone d'un exemple représentatif.
- Pour les paramètres de requête, l'outil gère les doublons (`?a=1&a=2` affiche les deux valeurs avec un badge "2× duplicate"), les valeurs manquantes (`?flag` apparaît comme null), et les clés encodées en pourcent (la clé brute originale est à côté de la décodée).
Quand c'est utile
Les situations les plus courantes où un des trois modes évite quelques minutes de frustration :
- Coller une phrase de recherche dans une URL. Vous voulez un lien "partager cette recherche" avec une query comme `?q=hello world & friends`. Espaces, esperluettes et guillemets cassent l'URL. Le mode Encode la transforme en string sûre que vous pouvez déposer directement dans le lien.
- Lire un lien de tracking depuis un email. Vous avez reçu un email marketing et le lien ressemble à une soupe de signes pourcentage. Le mode Decode vous montre la vraie destination, y compris les tags UTM, avant que vous cliquiez.
- Déboguer un appel d'API. Le frontend envoie une requête et les logs serveur montrent `query=hello%20world%26friends`. Decode confirme ce que le serveur a vraiment reçu par rapport à ce que le frontend pensait avoir envoyé.
- Comprendre une URL complexe. Un coéquipier envoie un lien avec credentials basic auth, port non défaut, long path et 10 paramètres de requête. Le mode Parse le présente sous forme de tableau pour que vous voyiez ce qui va où sans plisser les yeux.
- Valider une URL avant de la stocker. Vous acceptez des URLs soumises par des utilisateurs (un job board, un portfolio). Le mode Parse signale les URLs invalides avec le message d'erreur natif, pour que vous puissiez les rejeter avant qu'elles n'atteignent votre base.
- Gérer des query strings avec doublons. Une URL de recherche à facettes a `?tag=react&tag=typescript&tag=nextjs`. Le `URLSearchParams` standard vous donne une liste plate, mais voir les trois valeurs groupées sous une seule clé dans le tableau rend la structure évidente.
Pour l'échappement de contexte HTML (afficher `<` ou `&` comme texte littéral sur une page), utilisez l'encodeur d'entités HTML. Pour les payloads binaires, les en-têtes d'auth ou les data URLs, utilisez l'encodeur Base64.