Bases des technologies web

Une application de messagerie instantanée doit transmettre immédiatement les nouveaux messages du serveur au navigateur. Quelle description de WebSocket est correcte ?

  1. ALe navigateur envoie une requête HTTP toutes les quelques secondes et demande à chaque fois au serveur s'il y a de nouveaux messages
  2. BUne connexion commencée en HTTP est basculée (upgrade) pour que le serveur comme le navigateur puissent envoyer des messages sur une même connexion
  3. CQuand un événement se produit, un serveur prévient un autre serveur par une requête HTTP POST vers une URL enregistrée à l'avance
Afficher la réponse et l'explication

Réponse : B. Une connexion commencée en HTTP est basculée (upgrade) pour que le serveur comme le navigateur puissent envoyer des messages sur une même connexion

WebSocket demande Upgrade: websocket dans une requête HTTP, et lorsque le serveur renvoie 101 Switching Protocols, la même connexion TCP passe à la communication WebSocket. La connexion reste ensuite ouverte, et le serveur comme le navigateur peuvent envoyer de petits messages avec peu de surcoût. Avec une méthode qui interroge le serveur à intervalles fixes, des requêtes sont émises même quand il n'y a rien de nouveau, et les nouveaux messages sont retardés au plus d'un intervalle d'interrogation. La notification de serveur à serveur par une requête HTTP POST s'appelle un webhook.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases des technologies web

  1. Le serveur d'un commerçant veut savoir immédiatement qu'un paiement est terminé sur un service de paiement en ligne. Quelle description de la méthode dans laquelle le service de paiement envoie une notification par une requête HTTP POST à une URL enregistrée à l'avance par le commerçant (webhook) est correcte ?
  2. Quelle description du DOM (Document Object Model) utilisé par les navigateurs est correcte ?
  3. Pour un élément auquel s'applique le CSS ci-dessus, quelle est la largeur mesurée d'un bord extérieur à l'autre des bordures gauche et droite ?
  4. On suppose qu'il n'y a aucune autre règle de style. Dans le HTML ci-dessus, de quelle couleur est le texte « Hello » ?
  5. Dans le traitement qui mène le navigateur jusqu'au premier affichage (le chemin de rendu critique, ou critical rendering path), un élément <script src="app.js"> sans attribut placé dans <head> arrête l'analyse du HTML à cet endroit. Quel comportement est correct si l'on ajoute l'attribut defer à cet élément ?