Dev Tools

Encodeur / Décodeur URL

Encodez ou décodez des URLs (percent-encoding) instantanément. Traitement 100 % local.

Caractères courants encodés

%20
! %21
# %23
$ %24
& %26
' %27
= %3D
? %3F
@ %40
/ %2F
: %3A
é %C3%A9

Questions fréquentes

Pourquoi encoder les URLs ?

Les URLs ne peuvent contenir que des caractères ASCII spécifiques. Les espaces, accents, caractères spéciaux et non-ASCII doivent être encodés en percent-encoding (ex : espace → %20, é → %C3%A9).

Sans encodage, les URLs malformées peuvent causer des erreurs 400, des failles de sécurité ou un comportement imprévisible des serveurs.

Quelle est la différence entre encodeURI et encodeURIComponent ?

encodeURI() encode une URL complète et préserve les caractères structurels (/, ?, &, =, #, :). encodeURIComponent() encode un composant individuel (paramètre, valeur) et encode TOUS les caractères spéciaux y compris / ? & = #.

Pour les valeurs de paramètres GET, utilisez toujours encodeURIComponent.

Qu'est-ce que le percent-encoding ?

Le percent-encoding (ou URL encoding) représente les caractères non-ASCII par un signe % suivi de deux chiffres hexadécimaux correspondant à la valeur de l'octet UTF-8.

Par exemple : espace = %20, @ = %40, / = %2F, é = %C3%A9, emoji 🚀 = %F0%9F%9A%80.

Les espaces doivent-ils être encodés en %20 ou en + ?

Cela dépend du contexte. Dans les chemins d'URL, les espaces s'encodent en %20. Dans les paramètres de formulaires HTML (application/x-www-form-urlencoded), les espaces s'encodent en +.

Les deux sont valides dans leur contexte respectif, mais %20 est plus universel et recommandé dans les APIs REST.

Comment décoder une URL encodée en JavaScript ?

Utilisez decodeURIComponent() pour décoder un composant individuel, ou decodeURI() pour une URL complète. Attention : decodeURIComponent() lève une erreur URIError si la séquence percent-encoded est invalide.

Encapsulez l'appel dans un try/catch pour les entrées non fiables.

Découvrez nos autres outils pour développeurs :

Percent-encoding défini par la RFC 3986 (IETF, 2005) — Uniform Resource Identifier (URI): Generic Syntax. Encodage via encodeURIComponent() / decodeURIComponent() (ECMAScript). Traitement 100 % côté client.