Partie 1 : Protocole HTTP et communication avec le serveur Flashcards
Http
Protocole pour communiquer avec le serveur.
Est-ce que HTTP est spécifique à JavaScript?
Non, mais on peut se servir de AJAX pour l’utiliser avec Javascript.
TCP
Protocole utilisé par HTTP. C’est un mode de transport de requêtes.
Pourquoi HTTP est dit “Stateless”?
Pas d’information du client gardée entre chaque requête. Chaque client est dit anonyme. Protocole sans états. Par contre, des outils (comme les cookies) existent pour avoir une notion d’état.
Structure d’un message HTTP (requête et réponse)
- Ligne de début (start line)
- En-tête (headers) : métadonnées
- Ligne vide : pour indiquer que l’en-tête est fini
- Corps (body) qui contient le contenu (payload)
URI vs URL
URI est plus générique qu’URL.
Quand on fait une requête, on vise une ressource qui est identifiée par un URI.
Sur le web, c’est l’URL.
query
Composante de l’URI.
Toujours précédée par un ?
C’est une genre de variable pour ajouter de l’information supplémentaire.
HTTP - Méthodes
DÉFINITION
Représente l’action qu’on veut prendre sur la ressource qu’on cible (présente dans chaque requête).
Les 9 types de méthodes
GET, POST, DELETE, PUT et PATCH
HEAD, OPTIONS, CONNECT et TRACE
Méthode GET
Chercher l’information.
Obtenir l’information correspondant à une ressource.
Etag
Identification de la ressource. L’Etag change si la ressource change
Sécuritaire et idempotente
Sécuritaire : ne modifie par l’état du serveur (lecture seulement)
Idempotente : plusieurs requêtes envoyées une à la suite de l’autre ne change pas l’état du serveur. Mais le code de retour peut varier
Méthode HEAD
Comme GET, mais just pour le header. Diff avec le get, c’est qu’il ne renvoie pas le corps
Méthode POST
Créer quelque chose sur le serveur. C’est la méthode la plus flexible.
POST n’est ni idempotente ni sécuritaire.
Méthode DELETE
Supprimer une ressource sur le serveur.
Idempotente, mais pas sécuritaire.