Encodeur de composants URI
Si vous avez déjà passé une valeur comme name=John & Jane dans une URL sans l’encoder, vous connaissez le problème : le & est interprété comme un nouveau paramètre et le serveur reçoit des données corrompues. Cet outil encode par pourcentage toute chaîne pour un usage sûr comme composant URI selon la RFC 3986, en transformant chaque caractère réservé en une paire %HH (espaces compris). Collez un fragment, une valeur de requête ou une cible de redirection et récupérez quelque chose de sûr à concaténer dans n’importe quelle URL.
Comment encoder un composant URI
-
1
Collez votre valeur
Insérez une seule valeur de paramètre de requête, un segment de chemin ou une chaîne de fragment.
-
2
Choisissez encoder ou décoder
Changez de sens pour transformer les échappements de pourcentage en caractères d'origine.
-
3
Exécutez-le
L'outil encode chaque caractère en UTF-8, puis remplace chaque octet réservé par %HH.
-
4
Copiez le résultat
Collez la sortie directement dans votre modèle d'URL ou votre client API.
Quels caractères sont échappés
Cet encodeur suit la RFC 3986 : seul l’ensemble non réservé reste intact, A-Z a-z 0-9 - _ . ~. Tout le reste devient de l’UTF-8 encodé en pourcentage, y compris l’espace et les sous-délimiteurs ! * ' ( ) que le encodeURIComponent de JavaScript laisserait tranquilles.
| Caractère | Encodé en |
|---|---|
| espace | %20 |
! |
%21 |
# |
%23 |
& |
%26 |
' |
%27 |
( |
%28 |
) |
%29 |
* |
%2A |
+ |
%2B |
/ |
%2F |
= |
%3D |
? |
%3F |
é |
%C3%A9 |
Composant vs URI complet
Cet encodeur est plus strict que encodeURI, qui laisse : / ? # [ ] @ ! $ & ' ( ) * + , ; = intacts car ces caractères sont structurels dans une URL. Pour une valeur que vous concaténez dans une chaîne de requête, vous voulez la forme stricte, et c’est exactement ce que produit cet outil : il échappe même ! ' ( ) *, allant un cran plus loin que le encodeURIComponent de JavaScript.
const url = `/search?q=${encodeURIComponent(userInput)}`;
Pièges courants
- Double encodage : encoder quelque chose qui est déjà encodé vous donne
%2520au lieu de%20. Décodez toujours d’abord si vous n’êtes pas sûr de la source. - Signes plus dans les formulaires : la soumission de formulaires HTML encode les espaces en
+, pas en%20. Les décodeurs qui suivent strictement la RFC 3986 (celui-ci compris) ne retransformeront pas+en espace. Utilisez un décodeur compatible avec l’encodage de formulaire pour ces cas. - Séparateurs de chemin : encoder
/ici le transforme en%2F. Si vous voulez conserver une vraie structure de chemin, assemblez d’abord les segments et encodez chacun séparément.
Questions fréquentes
C’est un encodage par pourcentage selon la RFC 3986, la forme stricte. Il échappe :, /, ?, # et les autres caractères réservés (ainsi que !, ', (, ) et *) car un composant ne doit pas porter la structure d’URL à l’intérieur. Cela le rend plus strict que le encodeURIComponent de JavaScript et bien plus strict que encodeURI.
%20 est la méthode RFC 3986. + pour l’espace est un héritage de l’encodage du corps application/x-www-form-urlencoded. Pour les chaînes de requête dans les URL, %20 est toujours sûr ; + n’est attendu sur le serveur que lorsqu’il a été produit par un POST de formulaire.
Chaque caractère est d’abord encodé en UTF-8, puis chaque octet est échappé. Un caractère comme 日 devient %E6%97%A5 (trois octets).
Non. La valeur est encodée par pourcentage sur le serveur pour construire votre résultat et n’est ni stockée ni journalisée ; rien de ce que vous collez n’est conservé une fois la réponse envoyée.
Outils similaires
Référence de la table ASCII
Table ASCII complète de 0 à 127 avec décimal, hexadécimal, octal, binaire et référence numérique HTML pour chaque caractère, y compris les codes de contrôle comme NUL, LF et DEL.
Compteur de FPS
Mesurez les FPS du navigateur avec requestAnimationFrame : lissage, fréquence d'images min et max, seuil d'alerte et graphique facultatif. Tout se passe en local, sans envoi ni API.
Référence des caractères HTML
Liste consultable des entités HTML, de leurs codes nommés et numériques, et un copier-coller en un clic pour les caractères et symboles spéciaux.
Référence des raccourcis clavier
Recherchez les raccourcis par défaut documentés de VS Code, Chrome et Bash avec GNU Readline sous macOS, Windows et Linux.
Générateur de licence
Générez le texte complet des licences open source avec votre nom et l'année remplis. Couvre les licences MIT, Apache 2.0, GPLv3, BSD-3, MPL-2.0 et CC.
Vérificateur d'algorithme de Luhn
Validez les numéros de carte de crédit, IMEI, NAS et autres numéros protégés par Luhn. Retourne un résultat valide ou invalide et montre chaque étape de doublement et de somme.
Outil disponible dans d’autres langues
- Codificador de Componentes URI [ES]
- Koder komponentu URI [PL]
- ตัวเข้ารหัสองค์ประกอบ URI [TH]
- URIコンポーネントエンコーダー [JA]
- Bộ mã hóa Thành phần URI [VI]
- Codificador de Componentes URI [PT]
- URI-komponentkodare [SV]
- URI 컴포넌트 인코더 [KO]
- مُرمِّز مكوّن URI [AR]
- URI-Komponenten-Encoder [DE]
- Encoder Komponen URI [ID]
- URI-component-encoder [NL]
- URI Component Encoder [EN]
- Codificatore di componenti URI [IT]
- Кодировщик компонента URI [RU]
- URI Bileşeni Kodlayıcı [TR]
- URI 组件编码器 [ZH]