Encodeur / Décodeur d'URL
Encodez du texte pour une utilisation sécurisée dans les URL ou décodez des chaînes encodées en pourcentage vers du texte brut. Prend en charge les modes Standard, Form (+) et RFC 3986 complet.
Format d'encodage
Référence d'encodage des caractères spéciaux
| Caract. | Standard | Form (+) |
|---|---|---|
| (space) | %20 | + |
| & | %26 | %26 |
| = | %3D | %3D |
| + | %2B | %2B |
| / | %2F | %2F |
| ? | %3F | %3F |
| # | %23 | %23 |
| @ | %40 | %40 |
| % | %25 | %25 |
| ! | ! | ! |
* Full RFC 3986 mode only encodes unreserved characters (A–Z, a–z, 0–9, -, _, ., ~).
Questions fréquentes
L'encodage d'URL, également appelé encodage en pourcentage, convertit les caractères non autorisés ou ayant une signification particulière dans une URL en un format sûr. Chaque caractère non sûr est remplacé par un signe de pourcentage (%) suivi de deux chiffres hexadécimaux. Par exemple, un espace devient %20 et une esperluette devient %26. La norme est définie dans la RFC 3986.
%20 (Standard/RFC 3986) est l'encodage en pourcentage universel pour un espace et est sûr dans toutes les parties d'une URL. + (encodage de formulaire / application/x-www-form-urlencoded) est la norme de soumission de formulaires HTML. Utilisez %20 dans les paramètres de requête API et l'encodage de formulaire uniquement pour les soumissions de formulaires HTML.
La RFC 3986 définit les caractères non réservés toujours sûrs : lettres A–Z et a–z, chiffres 0–9, tiret (-), underscore (_), point (.) et tilde (~). Tout le reste — espaces, &, =, +, /, ?, #, @, %, Unicode non-ASCII — doit être encodé en pourcentage.
L'encodage d'URL est essentiel lorsque vous incluez des données utilisateur ou des caractères spéciaux dans une URL. Sans encodage, ?nom=Alice & Bob rompt la structure de l'URL. Dans les API REST (Django REST Framework, Laravel, Symfony — tous courants en France), les paramètres encodés en URL garantissent que la requête atteint le serveur intacte. L'encodage correct est également critique pour les tokens OAuth et les paramètres JWT.