6.1 Types de rubriques
Les en-têtes de requête http sont en fait des informations de service pour le client http et le serveur http. Mais c'est très important, et si vous ne les comprenez pas du tout, cela ira souvent de côté pour vous. Lisez donc au moins à leur sujet.
Tous les en-têtes http peuvent être divisés en 4 groupes principaux :
# | Type d'en-tête | Description | Note |
---|---|---|---|
1 | En-têtes généraux | Rubriques générales | Utilisé dans les requêtes et les réponses |
2 | En-têtes de requête | En-têtes de requête | Utilisé uniquement dans les requêtes |
3 | en-têtes de réponse | En-têtes de réponse | Utilisé uniquement dans les réponses |
4 | En-têtes d'entité | En-têtes d'entité | Accompagner chaque entité de message |
6.2 Agent utilisateur
L'en-tête le plus important et le plus populaire est User-Agent . Il s'agit d'une chaîne spéciale qui décrit quel client fait la demande au serveur. C'est le nom du client.
Souvent, le serveur adaptera légèrement sa réponse au demandeur. Par exemple, s'il ressort clairement de la demande que la demande provient d'un navigateur de téléphone mobile, une version mobile de la page HTML peut alors lui être attribuée.
Il n'est pas rare que les spambots, les gestionnaires de téléchargement et certains navigateurs envoient de fausses chaînes d'agent utilisateur pour se faire passer pour des clients légitimes. Cette situation est connue sous le nom d'usurpation d'agent utilisateur ou d'usurpation d'agent utilisateur.
Par exemple, mon User-Agent ressemble maintenant à ceci :
Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:99.0) Gecko/20100101 Firefox/99.0
Il contient des informations sur le navigateur, le système d'exploitation et le moteur Web du navigateur.
6.3 Type de contenu
Le deuxième en-tête le plus populaire est Content-Type . Il est utilisé pour déterminer le type MIME de la ressource que le serveur sert.
Même à l'aube d'Internet, les types de contenus multimédias transmis étaient standardisés pour plus de commodité. Ils sont appelés Internet Media Types ou MimeTypes en abrégé . Ils se répartissent en 9 catégories :
- application
- l'audio
- exemple
- image
- message
- modèle
- en plusieurs parties
- texte
- vidéo
Exemples:
Catégorie | Taper | Description |
---|---|---|
l'audio | audio/mp4 | Fichier audio au format mp4 |
audio/aac | Fichier audio AAC | |
image | image/gif | image gif |
image/jpeg | image jpeg | |
image/png | image png | |
texte | texte/css | Fichier CSS |
texte/html | Fichier HTML | |
vidéo | vidéo/mpeg | Fichier vidéo au format mpeg |
vidéo/webm | Fichier vidéo au format webm | |
vidéo/3gpp | Fichier vidéo au format 3gpp | |
application | application/x-formulaire-www-urlencodé | Données codées |
application/zip | Archive ZIP | |
application/javascript | Javascript | |
demande/xml | XML |
Habituellement, le serveur sait quelles données il donne. Mais si vous générez une réponse de serveur avec votre propre code, vous devez spécifier le type de réponse (Content-Type) de votre serveur.
6.4 Longueur du contenu
Cet en-tête spécifie la longueur de la réponse du serveur . Si d'une manière simple, alors la taille du fichier donné. Vous n'avez pas besoin de définir manuellement cette option. Bien qu'il puisse être utile de regarder ce que le serveur a donné, si pour une raison quelconque la réponse n'est pas venue du tout.
6.5 Accepter l'encodage
Avec cet en-tête, le client peut indiquer au serveur qu'il prend en charge divers algorithmes de compression de contenu . Ainsi, le serveur peut d'abord archiver le contenu, par exemple avec une archive zip, puis l'envoyer au client, et le client peut restaurer correctement le contenu d'origine.
L'avantage de l'archivage est que plus le fichier est petit, plus le transfert est rapide. Inconvénients de l'archivage - charge supplémentaire sur le client et sur le serveur. L'archivage a du sens lors du transfert de fichiers volumineux et n'a souvent aucun sens lors du transfert de petits fichiers.
Un exemple d'un tel en-tête :
Accept-Encoding: deflate, gzip;q=1.0, *;q=0.5
Où deflate
et gzip
sont les algorithmes de compression de données pris en charge, et q
indique le degré de compression.