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

deflateet gzipsont les algorithmes de compression de données pris en charge, et qindique le degré de compression.