Web Services

HTTP

Sommaire

  1. Architecture

  2. HTTP

  3. Requête / Réponse

  4. Méthodes

  5. Code HTTP

  6. Format de donnée

Architecture

  • Internet != WWW
  • maillage d'ordinateurs
  • liens hypertext
  • client / serveur

HyperText Transfer Protocol

  • protocole développé pour le web
  • http:// https://
  • Requête <=> réponse
  • stateless

HyperText Transfer Protocol

Connaissez-vous des clients HTTP ?

HyperText Transfer Protocol

HyperText Transfer Protocol "secure"

  • connexion sécurisée
  • chiffrement avec un certificat TLS
  • authentification serveur
  • échange de clés
  • authentification mutuelle
  • Let's Encrypt

HyperText Transfer Protocol 2/3

HTTP3

  • 2018
  • QUIC
  • UDP
  • chiffrement

HTTP2

  • 2015
  • multiplexage
  • format binaire
  • push serveur

Requête / réponse

Une requête est construite de cette façon :

  • une ligne de requête
  • une liste d'entêtes
  • une ligne vide
  • un corps de message (optionnel)

Requête / réponse

Requête / réponse

Une réponse est construite de cette façon :

  • une ligne de statut
  • une liste d'entêtes
  • une ligne vide
  • un corps de message (optionnel)

Requête / réponse

Requête / réponse

Regardez par vous-même !

Uniform Resource Identifier

C'est une adresse qui indique une ressource unique.

Uniform Resource Identifier

Récemment le W3C a annoncé qu'il n'était plus nécessaire de faire la distinction entre URI et URL !

Méthodes

Il existe 9 méthodes dont les plus utilisées sont :

  • GET
  • POST
  • PUT
  • PATCH
  • DELETE
  • ...

Méthodes

GET

Demande des données

Méthodes

POST

Envoie des données

pour créer

Méthodes

PUT

Envoie des données

pour remplacer

Méthodes

PATCH

Envoie des données

pour remplacer partiellement

Méthodes

DELETE

Supprime des données

Méthodes

Vous avez déjà vu ça quelque part ?

Code HTTP

Ils sont classés en 5 classes :

  • 10x
  • 20x
  • 30x
  • 40x
  • 50x

Code HTTP

10x

Information

Code HTTP

20x

Success

  • 200 OK
  • 201 ressource crée
  • 202 prise en compte

Code HTTP

30x

Redirect

  • 301 redirection définitive
  • 302 redirection partielle

Code HTTP

40x

Client error

  • 400 mauvaise requête
  • 401 non authentifié
  • 403 non authorisé
  • 404 introuvable
  • 405 méthode non disponible

Code HTTP

50x

Server error

  • 500 erreur interne
  • 501 non implémenté
  • 502 problème de passerelle
  • 503 service non disponible
  • 504 timeout

Formats de données

Les formats de données les plus communs :

  • HTML
  • XML
  • JSON

Formats de données

HyperText Markup Language

Formats de données

eXtensible Markup Language

Formats de données

Javascript Object Notation

Questions

Web Service - HTTP

By Karim PINCHON

Web Service - HTTP

  • 486