Encodage

URL Encode/Decode

Encodage et décodage d'URL — caractères à échapper dans les liens et les paramètres de requête.

URL encoding (percent-encoding) replaces characters that aren't allowed in a URL — spaces, non-Latin letters, special characters — with %XX sequences, where XX is the hex code of the byte. This keeps links and query parameters from getting mangled in transit.

How to use it

Common uses

Things to keep in mind

Encode parameter values, not the whole URL at once — otherwise you'll also encode the separators you need (:, /, ?, &).

JavaScript's encodeURIComponent and encodeURI encode different character sets — the former is meant specifically for parameter values.

Article sur cet outil: URL Encode/Decode : le percent-encoding dans les liens

Questions fréquentes

Quelle est la différence entre encodage URL et Base64 ?

L'encodage URL (percent-encoding) remplace les caractères spéciaux par des séquences %XX pour qu'ils soient valides dans une URL, alors que le Base64 URL-safe convertit des données binaires en texte avec un alphabet différent. Ce sont deux techniques distinctes, souvent confondues.

Quelle différence entre les modes Composant et URI ?

Le mode Composant échappe tous les caractères réservés, y compris &, = et /, ce qui convient pour encoder une valeur de paramètre de requête. Le mode URI préserve ces caractères car ils font partie de la structure d'une URL complète.

Mes données sont-elles envoyées sur un serveur ?

Non, l'encodage et le décodage se font entièrement dans le navigateur via JavaScript. Rien n'est transmis à un serveur.

Qu'est-ce que le double encodage et comment le repérer ?

C'est une erreur qui consiste à encoder une seconde fois une chaîne déjà encodée — le caractère % se transforme lui-même en %25, et %20 devient %2520. Le signe révélateur est la présence de séquences du type %25XX dans le résultat décodé.

Pourquoi l'espace est-il parfois encodé en +, parfois en %20 ?

Le + pour l'espace correspond au format application/x-www-form-urlencoded, utilisé par les formulaires et les query strings. %20 est le percent-encoding standard de la RFC 3986, valide dans n'importe quelle partie d'une URL.

Articles : Encodage

Base64 : à quoi sert l'encodage et comment il fonctionne

Comment Base64 transforme des données binaires en texte ASCII, et quand c'est réellement utile.

Base32 : en quoi il diffère de Base64 et quand il est plus pratique

L'alphabet de Base32, insensible à la casse, et les cas où il est plus pratique que Base64.

HTML Entities : afficher des caractères spéciaux en toute sécurité

Pourquoi les caractères < > & doivent être échappés, et comment cela évite de casser le balisage.

JWT : structure du token et ce que signifie « décoder » un JWT

Le header, le payload et la signature d'un JWT, et pourquoi décoder n'est pas la même chose que vérifier la signature.

Unicode Escape : que signifient les séquences \uXXXX

D'où viennent les séquences du type \u0041 dans le JSON et les chaînes JS, et ce qu'elles signifient.

ROT13 et le chiffre de César : une simple substitution de caractères

Pourquoi un décalage de 13 lettres rend ROT13 auto-inverse, et pourquoi on l'utilise encore aujourd'hui.

Punycode : comment les domaines internationalisés fonctionnent dans le DNS

Comment un domaine avec des caractères non latins devient une forme ASCII avec le préfixe xn--.

Le morse : comment le texte devient des points et des traits

Le principe de l'encodage des lettres en points et traits, et où le morse est encore utilisé aujourd'hui.

Data URI : quand intégrer une image directement dans le code

Comment un Data URI intègre le contenu d'un fichier directement en HTML ou CSS, et quand cela en vaut la peine.

Gzip + Base64 : compresser des données pour les transmettre en texte

Pourquoi des données binaires compressées sont aussi encodées en Base64 avant d'être placées dans un champ texte.

XML Entities : échapper les caractères dans les documents XML

Les cinq entités XML obligatoires, sans lesquelles le document se casse à l'analyse.