Encodeur et décodeur d’URL
S’exécute dans votre navigateur ; rien n’est envoyé
Encodez du texte en pourcentage pour une URL, décodez-le, ou découpez une URL en ses parties et ses paramètres de requête.
Text
Encodes everything except letters, digits and - _ . ! ~ * ' ( ). Use it for one query value or path segment.
Encoded
The encoded text appears here as you type.
Qu’est-ce que l’encodage d’URL ?
L’encodage d’URL, aussi appelé encodage en pourcentage (RFC 3986), remplace les caractères interdits ou qui ont un sens particulier dans une URL par un % suivi de deux chiffres hexadécimaux. Une espace devient %20, & devient %26 et / devient %2F. Les autres caractères sont d’abord convertis en octets UTF-8 : é devient donc %C3%A9.
C’est important parce que certains caractères structurent l’URL elle-même. ? ouvre la query string, & sépare les paramètres, = sépare un nom de sa valeur et # ouvre le fragment. Si un terme de recherche contient & sans être encodé, le serveur le lit comme le début d’un nouveau paramètre.
Encodez chaque valeur séparément, pas l’URL entière. Encoder une URL complète comme une valeur encode aussi son ://, ses / et son ?, ce qui la casse ; c’est à cela que sert le mode URL complète, quand vous devez seulement corriger les espaces et les accents d’une URL par ailleurs correcte.
Comment utiliser cet outil
- 1Choisissez Encode, Decode ou Parse. Changer de mode conserve votre texte ; Swap (Alt+Shift+S) place la sortie dans l’entrée et alterne entre Encode et Decode.
- 2Pour encoder, indiquez ce qu’est le texte : une valeur (
encodeURIComponent), une URL complète (encodeURI) ou des données de formulaire, où les espaces deviennent+. La ligne au-dessus de l’éditeur indique exactement quels caractères chaque option conserve. - 3Pour décoder, collez le texte encodé. Activez + means space pour les données de formulaire et les query strings envoyées par des formulaires HTML. Si une séquence est mal formée ou n’est pas en UTF-8, elle est marquée dans l’éditeur et F8 vous y amène.
- 4Si le résultat contient encore des
%XX, le texte a été encodé deux fois ; Decode again, dans la barre d’état, le décode une fois de plus. - 5Each line separately traite chaque ligne comme une valeur distincte, pour une liste de valeurs. Parse découpe une URL en schéma, hôte, port, chemin, fragment et un tableau des paramètres de requête décodés, que vous pouvez copier en JSON.
Dépannage
%doit être suivi de deux chiffres hexadécimaux- Le texte contient un signe pourcentage littéral, comme
100%, ou une séquence tronquée. Dans une URL, un vrai signe pourcentage s’écrit%25. %E9n’est pas de l’UTF-8 valide à cet endroit- Le texte a été encodé par un ancien encodeur qui utilisait Latin-1 au lieu d’UTF-8 :
éest donc devenu%E9au lieu de%C3%A9. Réencodez le texte d’origine, ou demandez à l’expéditeur d’utiliser l’UTF-8. - Un
+est devenu une espace, ou une espace est restée un+ +ne signifie espace que dans les données de formulaire (application/x-www-form-urlencoded), comme une query string envoyée par un formulaire HTML. Activez ou désactivez + means space selon l’origine du texte.- Ce n’est pas une URL absolue
- Parse a besoin du schéma et de l’hôte, comme
https://api.example.com. Des chemins comme/users?page=2sont relatifs à une page et ne peuvent pas être analysés seuls.
Questions fréquentes
Quelle est la différence entre encodeURI et encodeURIComponent ?
encodeURIComponent encode tout sauf les lettres, les chiffres et - _ . ! ~ * ' ( ) : c’est le bon choix pour une valeur seule. encodeURI laisse intacts les caractères qui structurent une URL, comme : / ? # & = + : c’est le bon choix pour une URL complète dont il faut seulement corriger les caractères non sûrs.
Une espace doit-elle devenir %20 ou + ?
Dans un chemin et dans la plupart des API, utilisez %20. + ne signifie espace que dans les données de formulaire, c’est-à-dire ce que les navigateurs envoient pour les formulaires HTML et ce qu’utilisent beaucoup de query strings. Pour décoder une query string produite par un formulaire, activez + means space.
Pourquoi Parse affiche-t-il une URL différente de celle que j’ai collée ?
Parse utilise l’analyseur d’URL du navigateur, qui normalise l’URL : il met le schéma et l’hôte en minuscules, retire un port par défaut comme :443 et encode en pourcentage les espaces et les caractères non ASCII. Copy URL copie cette forme normalisée.
Ma saisie est-elle envoyée à un serveur ?
Non. L’encodage, le décodage et l’analyse se font dans votre navigateur, et rien de ce que vous collez n’est envoyé. Pour survivre à un rechargement, ce que vous collez est conservé dans le session storage de cet onglet jusqu’à ce que vous l’effaciez ou fermiez l’onglet. Copy link place l’entrée dans le lien après le #, une partie que les navigateurs n’envoient jamais à un serveur, mais toute personne à qui vous donnez le lien peut la lire.