Encodage d'URL HTML
Encodage d’URL HTML
Section titled “Encodage d’URL HTML”Une URL (Uniform Resource Locator - Localisateur Uniforme de Ressource) est l’adresse unique d’une ressource sur le web, comme une page web ou une image.
Les URL peuvent utiliser des noms lisibles par l’homme (comme example.com) ou des adresses IP (comme 192.168.1.1). La plupart des gens utilisent des noms car ils sont plus faciles à retenir.
Comprendre la structure d’une URL
Section titled “Comprendre la structure d’une URL”Les navigateurs web utilisent les URL pour demander des ressources aux serveurs web. Lorsque vous cliquez sur un lien, le navigateur utilise l’URL spécifiée dans l’attribut href de la balise <a>.
Une URL typique, comme https://www.example.com/path/to/resource.html, suit une structure standard :
scheme://host.domain:port/path/filenameExplication :
- schéma : Définit le protocole (par exemple,
http,https).httpsest la norme sécurisée. - hôte : Souvent
www, mais peut varier. - domaine : Le nom de domaine (par exemple,
example.com). - port : Le port réseau (par défaut pour
httpest 80, pourhttpsest 443). Généralement omis. - chemin : Le chemin d’accès à la ressource sur le serveur.
- nom de fichier : Le nom de la ressource spécifique (par exemple,
resource.html).
Schémas d’URL courants
Section titled “Schémas d’URL courants”Voici quelques schémas d’URL courants :
| Schéma | Signification | Utilisation principale |
|---|---|---|
| http | Protocole de Transfert Hypertexte | Pages web standard (Non crypté - À éviter pour les données sensibles). |
| https | Protocole de Transfert Hypertexte Sécurisé | Pages web sécurisées (cryptées). La norme pour les sites web modernes. |
| ftp | Protocole de Transfert de Fichiers | Utilisé pour le transfert de fichiers (moins courant dans les navigateurs maintenant). |
| file | Fichier local | Référence un fichier sur votre ordinateur local. |
Encodage d’URL (Encodage en pourcentage)
Section titled “Encodage d’URL (Encodage en pourcentage)”Les URL ne peuvent contenir qu’un ensemble limité de caractères du jeu de caractères ASCII.
Les caractères en dehors de cet ensemble standard (comme les espaces, les lettres accentuées ou les symboles) doivent être encodés avant d’être envoyés sur internet. Ce processus est appelé encodage d’URL ou encodage en pourcentage.
L’encodage d’URL remplace les caractères non sécurisés ou non-ASCII par un « % » suivi de leur représentation hexadécimale à deux chiffres (basée sur leur valeur d’octet UTF-8).
Par exemple, un espace est souvent encodé en %20 (bien que les systèmes plus anciens utilisaient parfois +, %20 est la norme pour les chemins et les chaînes de requête). Le caractère € (symbole de l’Euro) devient %E2%82%AC en encodage UTF-8.
La plupart des navigateurs web modernes et des frameworks de développement gèrent l’encodage d’URL automatiquement lorsque vous naviguez ou soumettez des formulaires. Cependant, comprendre l’encodage est crucial pour déboguer les problèmes liés aux URL ou lors de la construction d’URL de manière programmatique (par exemple, en JavaScript en utilisant encodeURIComponent()).
Exemple d’encodage d’URL dans un formulaire
Section titled “Exemple d’encodage d’URL dans un formulaire”Considérez un simple formulaire HTML :
<form action="/search" method="get"> <input type="text" name="query" value="HTML tips & tricks"> <button type="submit">Search</button></form>Lorsque vous cliquez sur « Soumettre », le navigateur encode la valeur d’entrée avant de l’envoyer au serveur. L’espace devient %20 et l’esperluette & devient %26. L’URL résultante pourrait ressembler à :
`/search?query=HTML%20tips%20%26%20tricks`L’encodage des caractères est important
Section titled “L’encodage des caractères est important”Les codes hexadécimaux spécifiques utilisés dans l’encodage en pourcentage dépendent de l’encodage des caractères du document HTML. La norme universelle et la forte recommandation pour les pages web est UTF-8.
L’utilisation de l’UTF-8 garantit qu’une large gamme de caractères internationaux est gérée de manière cohérente.
Exemples d’encodages pour les caractères courants utilisant l’UTF-8 :
| Caractère | Encodage en pourcentage UTF-8 |
|---|---|
| € | %E2%82%AC |
| £ | %C2%A3 |
| © | %C2%A9 |
| ® | %C2%AE |
| ü | %C3%BC |
| ñ | %C3%B1 |
| %20 | |
| & | %26 |
| ? | %3F |
Pour un guide complet sur l’encodage d’URL et les fonctions associées, consultez les MDN Web Docs.