Aller au contenu
nestoo
  • Mon adresse IPVotre IP publique IPv4 et IPv6, sa localisation et votre fournisseur.Réseau et IP
  • Localisation d’adresse IPLocalisation, fournisseur et réseau de n’importe quelle adresse IP.Réseau et IP
  • Recherche DNSEnregistrements DNS A, AAAA, MX, TXT, NS et autres de tout domaine.Réseau et IP
  • Recherche WHOISTitulaire, registrar et date d’expiration de tout domaine ou IP.Réseau et IP
  • Vérificateur de portsVérifiez si un port est ouvert sur votre IP ou sur un serveur.Réseau et IP
  • Vérificateur d’en-têtes HTTPEn-têtes de réponse, codes de statut et redirections d’une URL.Réseau et IP
  • Vérificateur SSLValidité, expiration et chaîne du certificat de n’importe quel site.Réseau et IP
  • Générateur de mots de passeDes mots de passe forts et aléatoires, générés dans votre navigateur.Mots de passe et sécurité
  • Test de robustesse des mots de passeLe temps qu’il faudrait pour casser un mot de passe, et s’il a fuité.Mots de passe et sécurité
  • Générateur de hashHash MD5, SHA-1, SHA-256, SHA-512 et CRC32 de textes ou de fichiers.Mots de passe et sécurité
  • Formateur JSONFormatez, validez et minifiez du JSON, avec la position exacte des erreurs.Outils pour développeurs
  • Encodeur/décodeur Base64Encodez du texte ou des fichiers en Base64, et décodez-les.Outils pour développeurs
  • Encodeur/décodeur URLEncodez et décodez des URL et des chaînes de requête, et analysez n’importe quelle URL.Outils pour développeurs
  • Décodeur JWTLisez l’en-tête et les claims d’un JSON Web Token.Outils pour développeurs
  • Générateur d’UUIDIdentifiants UUID v4 aléatoires et v7 ordonnés dans le temps.Outils pour développeurs
  • Convertisseur de timestamp UnixConvertissez des timestamps Unix en dates, et des dates en timestamps.Outils pour développeurs
  • Convertisseur binaireTraduisez du texte en binaire et convertissez des nombres d’une base à l’autre.Outils pour développeurs
  • Compteur de motsComptez les mots, les caractères, les phrases et le temps de lecture.Outils de texte
  • Convertisseur de casseMAJUSCULES, minuscules, majuscule à chaque mot, camelCase, snake_case et plus.Outils de texte
  • Comparateur de texteComparez deux textes et visualisez leurs différences.Outils de texte
  • Générateur de QR codeQR codes gratuits pour liens, texte, Wi-Fi et contacts, en PNG ou SVG.Outils du quotidien
  • Calculateur de pourcentagePourcentage d’un nombre, variation en pourcentage, hausse et baisse.Outils du quotidien
  • Convertisseur d’unitésConvertissez longueurs, poids, températures, volumes, données et plus.Outils du quotidien

Encodeur et décodeur URL

Encodez du texte en pourcent pour les URL et les chaînes de requête, ou décodez-le pour retrouver un texte lisible. L’analyseur d’URL ci-dessous découpe n’importe quel lien en ses différentes parties.

Encodage

Encode tout sauf les lettres, les chiffres et - _ . ! ~ * ' ( ). À utiliser pour une seule valeur de paramètre, un segment de chemin ou un champ de formulaire : c’est l’équivalent de encodeURIComponent en JavaScript.

Analyser une URL

Collez un lien pour voir ses différentes parties et chaque paramètre de requête, décodés.

Fonctionne dans votre navigateur. Ce que vous saisissez ne quitte jamais votre appareil.

Mode d’emploi

  1. 1Choisissez Encoder ou Décoder, puis saisissez ou collez votre texte : le résultat se met à jour pendant la saisie.
  2. 2Pour encoder, choisissez le bon type : Composant pour une seule valeur, comme un terme de recherche, URL complète pour une adresse entière, ou Données de formulaire pour écrire les espaces sous la forme +.
  3. 3Pour décoder une chaîne de requête ou des données de formulaire, activez « Interpréter + comme un espace ». Si le texte contient une séquence d’échappement incorrecte, l’outil indique exactement où elle se trouve.
  4. 4Pour inspecter un lien, collez-le dans « Analyser une URL » afin de voir son hôte, son port, son chemin, son fragment et chaque paramètre de requête, décodé.

Qu’est-ce que l’encodage d’URL ?

Une URL ne peut contenir qu’un ensemble restreint de caractères ASCII. Tout le reste (espaces, lettres accentuées, emoji et caractères ayant une signification particulière, comme &, =, ? ou #) doit être encodé en pourcent : chaque octet de la forme UTF-8 du caractère s’écrit % suivi de deux chiffres hexadécimaux. Un espace devient %20, é devient %C3%A9 et € devient %E2%82%AC.

L’encodage évite que des données soient confondues avec la structure de l’URL. Si un terme de recherche contient & et que vous le laissez tel quel, le serveur coupe le terme en deux paramètres ; écrit %26, il reste dans la valeur.

Composant, URL complète ou données de formulaire ?

L’encodage de composant, encodeURIComponent en JavaScript, encode tout sauf les lettres, les chiffres et - _ . ! ~ * ' ( ). Utilisez-le pour chaque élément que vous insérez dans une URL : une valeur de paramètre, un segment de chemin, une cible de redirection.

L’encodage d’URL complète, encodeURI, laisse intacts les caractères qui structurent une URL, comme : / ? # & =, et n’encode que les espaces, les caractères non ASCII et les symboles à risque. Utilisez-le pour une URL entière déjà correctement construite, jamais pour des valeurs isolées.

L’encodage de formulaire (application/x-www-form-urlencoded) est ce qu’envoient les navigateurs quand vous soumettez un formulaire HTML, et ce que produit URLSearchParams. Il fonctionne comme l’encodage de composant, sauf que les espaces deviennent +. C’est pourquoi + signifie un espace dans la plupart des chaînes de requête, et pourquoi un vrai signe plus doit s’écrire %2B.

Pourquoi le décodage peut échouer

Un % doit toujours être suivi de deux chiffres hexadécimaux. Un texte comme 100% sûr n’est pas un encodage pourcent valide : le signe pourcentage lui-même aurait dû s’écrire %25.

Les octets derrière les séquences d’échappement doivent aussi former de l’UTF-8 valide. caf%E9 est la façon dont d’anciens systèmes encodaient « café » en Windows-1252 ou ISO-8859-1 ; en UTF-8, é s’écrit %C3%A9. Le décodeur signale la séquence exacte qui pose problème : vous voyez ainsi si le texte a été tronqué ou encodé avec un autre jeu de caractères.

Questions fréquentes

Que signifie %20 dans une URL ?

%20 est un espace encodé. Les espaces ne sont pas autorisés dans les URL : on les écrit donc %20, ou + dans les chaînes de requête et les données de formulaire. Les deux se décodent en un espace ordinaire.

Faut-il encoder les espaces en %20 ou en + ?

Dans le chemin, utilisez toujours %20. Dans la chaîne de requête, les deux fonctionnent en pratique, car les serveurs décodent les données de formulaire en traitant + comme un espace. %20 fonctionne partout, alors que + ne signifie un espace que dans les chaînes de requête et les corps de formulaire.

Quelle est la différence entre encodeURI et encodeURIComponent ?

encodeURIComponent encode aussi les caractères réservés comme / ? & = # : c’est donc le bon choix pour des valeurs individuelles. encodeURI les laisse tels quels pour qu’une URL complète continue de fonctionner. Utiliser encodeURI sur une valeur de paramètre est un bug courant : un & présent dans la valeur la coupe alors en deux paramètres.

Pourquoi ai-je une erreur « URI malformed » ?

La fonction decodeURIComponent de JavaScript la déclenche quand un % n’est pas suivi de deux chiffres hexadécimaux, ou quand les octets encodés ne forment pas de l’UTF-8 valide. Collez le texte dans le décodeur ci-dessus : il indique quelle séquence provoque l’erreur et à quelle position.

Quels caractères n’ont pas besoin d’être encodés dans une URL ?

Les lettres A–Z et a–z, les chiffres 0–9 et - . _ ~ n’ont jamais besoin d’être encodés. Les caractères réservés comme : / ? # [ ] @ ! $ & ' ( ) * + , ; = sont autorisés là où ils ont leur signification particulière, mais doivent être encodés lorsqu’ils font partie des données.