L'encodage-pourcent remplace les caractères qui ont une signification réservée dans une URL — ou qui ne peuvent pas y figurer du tout — par un « % » suivi de la valeur de leur octet en hexadécimal. Il devient nécessaire dès qu'une chaîne de requête contient des espaces, des caractères accentués ou japonais, ou des symboles comme & qui scinderaient sinon le paramètre.
Mode d'emploi
- Collez la valeur à insérer dans une URL.
- Les caractères hors de l'ensemble non réservé sont encodés en pourcentage à partir de leurs octets UTF-8.
- Copiez le résultat dans votre chaîne de requête ou votre segment de chemin.
Questions fréquentes
Les espaces deviennent-ils %20 ou + ?
%20. La forme avec + ne s'applique qu'aux corps de formulaire application/x-www-form-urlencoded, pas aux URL en général.
Quels caractères restent inchangés ?
L'ensemble non réservé : A–Z, a–z, 0–9 et - _ . ~ , ainsi que ! * ' ( ) qui sont sûrs en pratique. Tout le reste est encodé.
Pourquoi un caractère japonais devient-il neuf caractères ?
L'encodage se fait octet par octet en UTF-8, et la plupart des caractères japonais occupent trois octets : chacun devient donc trois groupes %XX.