Encodeur/Décodeur URL FAQ

Encoder et décoder les chaînes URL

Qu'est-ce que l'encodage URL ?

L'encodage URL (encodage percent) remplace les caractères spéciaux par %XX où XX est la valeur ASCII/UTF-8 hexadécimale. L'espace devient %20, & devient %26. Cela permet aux caractères spéciaux d'être transmis en toute sécurité dans les URL sans déclencher leurs significations réservées.

Quand devrais-je encoder l'URL ?

Encodez toute entrée utilisateur placée dans les URL : termes de recherche, noms, descriptions ou toute chaîne contrôlée par l'utilisateur. N'encodez pas des choses comme :/?dans la partie de base d'une URL - seulement les valeurs. Utilisez encodeURIComponent() en JavaScript pour les valeurs de paramètres.

Quelle est la différence entre encodeURI et encodeURIComponent ?

encodeURI() laisse les caractères réservés (:/?&=) non encodés, adapté aux URL entières. encodeURIComponent() encode tout sauf alphanumérique et -_.!~*'(), adapté aux valeurs de paramètres. Pour la plupart des cas d'usage, vous voulez encodeURIComponent pour les valeurs.

Pourquoi est-ce que je vois + au lieu de %20 pour les espaces ?

Historiquement, les espaces dans les chaînes de requête étaient encodés comme + (application/x-www-form-urlencoded). L'encodage URL moderne préfère %20 partout. Les deux fonctionnent dans les chaînes de requête, mais seul %20 fonctionne dans les chemins d'URL. Notre outil utilise %20 pour une compatibilité universelle.

Comment gérer les caractères non-ASCII ?

Les caractères non-ASCII (ü, 中, و) sont d'abord convertis en octets UTF-8, puis chaque octet est encodé en pourcent. Le ü devient %C3%BC (octets UTF-8 C3 BC). L'encodage URL moderne utilise toujours UTF-8 pour les caractères internationaux.

Qu'est-ce que le double encodage ?

Le double encodage se produit lorsque vous encodez une chaîne déjà encodée : %20 devient %2520. Cela casse les URL - elles affichent littéralement %20 au lieu de l'interpréter comme un espace. Décodez toujours avant de réencoder si vous n'êtes pas sûr que l'entrée soit déjà encodée.

Essayer l'Outil

Encoder et décoder les chaînes URL

Encodeur/Décodeur URL