Bases & syntaxe
Requête HTTP basique
GET /index.html HTTP/1.1
Host: www.example.com
Utilisé pour demander une ressource.
Réponse HTTP basique
HTTP/1.1 200 OK
Content-Type: text/html
<!DOCTYPE html>
<html lang="en">
<head><title>Example</title></head>
<body><h1>Hello World</h1></body>
</html>
Retourne le contenu demandé.
Structures de données
En-têtes HTTP
Content-Type: application/json
Authorization: Bearer <token>
Contient des informations sur la requête ou la réponse.
Paramètres URL
GET /search?q=python&lang=en HTTP/1.1
Host: www.example.com
Permet de passer des données à travers l'URL.
Fonctions & methodes essentielles
POST
POST /users HTTP/1.1
Host: www.example.com
Content-Type: application/json
{
"name": "John",
"email": "john@example.com"
}
Utilisé pour créer une nouvelle ressource.
PUT
PUT /users/1 HTTP/1.1
Host: www.example.com
Content-Type: application/json
{
"name": "Jane",
"email": "jane@example.com"
}
Utilisé pour mettre à jour une ressource existante.
DELETE
DELETE /users/1 HTTP/1.1
Host: www.example.com
Utilisé pour supprimer une ressource.
Patterns courants
Authentification avec JWT
GET /protected-resource HTTP/1.1
Host: www.example.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Utilise JSON Web Tokens pour l'authentification.
CORS (Cross-Origin Resource Sharing)
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, DELETE
Access-Control-Allow-Headers: Content-Type, Authorization
Permet d'accéder à des ressources sur un domaine différent.
Operations avancées
HTTP/2
PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n
Protocole de transfert HTTP moderne avec multiplexage et compression.
Streaming
GET /stream HTTP/1.1
Host: www.example.com
Range: bytes=0-
Permet de récupérer une partie d'une ressource en streaming.
Debugging & outils
Inspecteur réseau
Outils du navigateur (F12 ou Ctrl+Shift+I) -> Onglet "Réseau"
Affiche toutes les requêtes et réponses HTTP.
cURL
curl -X GET http://www.example.com
Utilitaire en ligne de commande pour tester des requêtes HTTP.
Postman
Outil graphique pour tester API RESTful
Permet d'envoyer des requêtes et de visualiser les réponses.