Skip to content

Encodeur et Décodeur d'URL

Encodage en pourcentage (RFC 3986) pour les chaînes de requête et les fragments d'URL.

Buğra SözeriDéveloppeur
Updated · Published
Reviewed by Convertitive

L’encodage d’URL (ou encodage en pourcentage) remplace les caractères qui ont une signification réservée dans les URLs — espaces, esperluettes, signes égal, barres obliques — par un signe de pourcentage suivi des valeurs d’octet UTF-8 du caractère en hexadécimal. L’outil ci-dessous fonctionne dans les deux sens, prend en charge la plage Unicode complète et expose les deux modes que JavaScript utilise nativement : encodeURIComponent (strict) pour les valeurs de chaîne de requête, et encodeURI (détendu) pour les URLs complètes.

Mode
search%20query%20with%20spaces%20%26%20special%3Dchars%3F

How to use

  1. Choisissez une direction

    Encoder transforme le texte brut en forme échappée en pourcentage ; Décoder fait l'inverse.

  2. Choisissez strict ou détendu (encodage uniquement)

    Strict (encodeURIComponent) échappe tous les caractères réservés — utilisez-le pour les valeurs de chaîne de requête. Détendu (encodeURI) préserve la structure d'une URL complète.

  3. Collez votre valeur

    La sortie se met à jour au fil de la frappe. Le côté décodage affichera une erreur claire si l'entrée contient une séquence de pourcentage malformée.

Frequently asked questions

Quels caractères sont encodés en pourcentage ?
Le mode strict encode tout sauf A-Z a-z 0-9 -_.~ (l'ensemble 'non réservé' selon RFC 3986). Le mode détendu préserve également l'ensemble réservé : : / ? # [ ] @ ! $ & ' ( ) * + , ; =
Les espaces sont-ils encodés en %20 ou en + ?
Dans le chemin d'une URL, toujours %20. Dans une chaîne de requête, les deux sont techniquement acceptés (le + vient de l'ancien standard application/x-www-form-urlencoded), mais %20 est sans ambiguïté. Cet outil émet %20 dans les deux modes.
L'encodeur gère-t-il Unicode ?
Oui. Les caractères non ASCII sont encodés sous forme de leur séquence d'octets UTF-8, chaque octet étant échappé en pourcentage. Le décodeur inverse cela, renvoyant la chaîne originale.
Pourquoi est-ce que j'obtiens l'erreur 'séquence de pourcentage incomplète' ?
L'entrée contient un % qui n'est pas suivi exactement de deux chiffres hexadécimaux — généralement parce qu'un autre outil a déjà décodé la valeur, ou parce que la valeur a été concaténée sans échappement.

Outils associés