URL Encoder and Decoder

Encode text for safe use in URLs (percent-encoding) or decode it back. Essential for query parameters and links.

Qu'est-ce que l'encodage d'URL

Le codage d'URL, également appelé codage en pourcentage, remplace les caractères dangereux dans une adresse Web par un signe de pourcentage suivi d'un code. Un espace devient %20, une esperluette devient %26, et ainsi de suite. Cela vous permet de mettre du texte, des espaces, des accents, des symboles dans une URL sans la casser. Cet outil encode le texte pour une utilisation sûre dans les URL et décode le texte codé en pourcentage sous une forme lisible.

Pourquoi c'est nécessaire

Les URL ont un ensemble limité de caractères qu'elles peuvent contenir en toute sécurité. Lorsque vous insérez un terme de recherche, une valeur de paramètre ou un segment de chemin comprenant des espaces, des barres obliques, des points d'interrogation ou des lettres non anglaises directement dans une URL, ces caractères peuvent être mal interprétés et rompre le lien. L'encodage les convertit en une représentation sûre que les serveurs et les navigateurs décodent correctement. Toute personne créant des chaînes de requête, des appels API ou des liens par programmation en a constamment besoin.

Encodage et décodage

L'encodage prend du texte lisible et le rend sécurisé pour les URL, ce qui est essentiel lorsque vous construisez un lien ou un paramètre de requête. Le décodage fait l'inverse, transformant une chaîne codée en pourcentage en texte lisible, ce qui est utile lorsque vous lisez une URL que quelqu'un vous a envoyée, déboguer un appel API ou inspecter ce que contient réellement un paramètre. Cet outil fait les deux en un seul clic et gère correctement les caractères accentués et non anglais via UTF-8.

Situations courantes

Création d'une URL de recherche où la requête contient des espaces et des symboles. Transmission d'une valeur qui inclut une esperluette ou un signe égal via un paramètre de requête sans rompre la structure de l'URL. Lire une URL longue et codée pour comprendre vers quoi elle pointe. Construire des requêtes API où les paramètres doivent être encodés. Parce qu'il s'exécute dans votre navigateur, vous pouvez encoder ou décoder en toute sécurité les valeurs contenant des données sensibles.

Qu'est-ce que l'encodage d'URL

Le codage d'URL, également appelé codage en pourcentage, remplace les caractères dangereux ou réservés dans une URL par un signe de pourcentage suivi de deux chiffres hexadécimaux. Un espace devient %20, une esperluette devient %26, et ainsi de suite. Les URL sont limitées à un petit ensemble de caractères ASCII par la norme RFC 3986, donc tout ce qui se trouve en dehors de cet ensemble, des espaces, des accents, des emoji ou des symboles réservés comme ? & = # lorsqu'il est utilisé comme données, doit être codé pour voyager du navigateur au serveur sans casser la structure de l'URL.

encodeURI contre encodeURIComponent

JavaScript propose deux fonctions d'encodage, et le mauvais choix est un bug courant. encodeURIComponent encode tout ce qui est réservé et correspond à ce que vous souhaitez pour les valeurs individuelles que vous mettez dans une chaîne de requête, un terme de recherche, une valeur de paramètre, une cible de redirection. encodeURI préserve les caractères de structure d'URL tels que /? & = et est destiné à coder une URL entière tout en la gardant fonctionnelle. La règle générale : utilisez encodeURIComponent pour les valeurs contenues dans une URL et encodeURI uniquement pour une URL entière. Cet outil code les composants, ce dont vous avez besoin la plupart du temps.

Erreurs courantes d'encodage d'URL

Deux bugs dominent. Le double encodage se produit lorsque vous encodez une chaîne déjà encodée, %20 devient %2520, ce qui rompt le lien ; encodez uniquement du texte brut, jamais une URL déjà encodée, et décodez d'abord si vous n'êtes pas sûr. L'autre est l'ambiguïté du signe plus : dans une chaîne de requête, + peut signifier un espace (issu de l'encodage d'un formulaire HTML), mais dans un chemin d'URL, il s'agit d'un plus littéral. En cas de doute, utilisez %20 pour un espace qui est sans ambiguïté partout. N'oubliez pas non plus qu'une valeur non codée et à l'intérieur d'une valeur sera mal interprétée en tant que séparateur de paramètres, divisant ainsi vos données.

Questions fréquentes

Quelle est la différence entre l’encodage URL et Base64 ?
Le codage d'URL sécurise le texte pour les adresses Web en codant en pourcentage les caractères dangereux. Base64 est un codage différent pour sécuriser le texte des données binaires. Ils servent à des fins différentes et ne sont pas interchangeables.
Pourquoi un espace devient-il %20 ?
Les espaces ne sont pas autorisés dans les URL, donc l'encodage les remplace par %20, une représentation sûre que les navigateurs et les serveurs décodent en espace. Certains contextes utilisent plutôt un signe plus.
Gère-t-il les caractères accentués et non anglais ?
Oui. L'outil code via UTF-8, de sorte que les lettres accentuées et les caractères de n'importe quelle langue sont codés et décodés correctement.
When would I decode a URL?
Lorsque vous souhaitez lire ce que contient réellement une URL ou un paramètre codé, cela est utile pour déboguer les appels d'API, inspecter les liens ou comprendre une longue adresse codée que quelqu'un vous a envoyée.
Mes données sont-elles privées ?
Oui. L'encodage et le décodage s'effectuent dans votre navigateur sans téléchargement.
Quelle est la différence entre l’encodage et le décodage d’URL ?
L'encodage convertit les caractères non sécurisés en codes de pourcentage (un espace devient %20) afin que le texte soit en sécurité dans une URL. Le décodage l'inverse, transformant %20 en un espace d'affichage. Utilisez l'encodage pour créer une URL, décodez-la pour en lire une.
Quand dois-je utiliser encodeURIComponent plutôt que encodeURI ?
Utilisez encodeURIComponent pour les valeurs individuelles à l'intérieur d'une URL, comme les valeurs des paramètres de requête, il encode tout ce qui est réservé. Utilisez encodeURI uniquement pour une URL entière que vous souhaitez conserver fonctionnelle, car elle préserve les caractères de structure tels que /? & =.
Pourquoi mon URL contient-elle %2520 ?
Il s'agit d'un double encodage : une chaîne déjà encodée a été à nouveau encodée, donc le % dans %20 est devenu %25. Encodez uniquement du texte brut, jamais une URL déjà encodée. En cas de doute, décodez d’abord, puis encodez une fois.
Dois-je coder un espace en %20 ou + ?
%20 est la norme et fonctionne partout. Le + signifie uniquement un espace dans les données du formulaire de chaîne de requête et constitue un plus littéral dans un chemin d'URL. En cas de doute, utilisez %20.