CORS expliqué
Guide complet du partage de ressources entre origines — fonctionnement, chaque en-tête expliqué et erreurs courantes avec solutions.
Aperçu
Qu'est-ce que le CORS ?
Le Cross-Origin Resource Sharing (CORS) est un mecanisme base sur les en-tetes HTTP qui permet a un serveur d'indiquer toute origine (domaine, schema ou port) autre que la sienne a partir de laquelle un navigateur devrait autoriser le chargement de ressources. Les navigateurs appliquent par defaut la politique de meme origine (Same-Origin Policy), qui empeche les pages web d'effectuer des requetes vers une origine differente de celle qui a servi la page.
La politique de meme origine
Deux URLs ont la meme origine si elles partagent le meme schema (http/https), le meme hote et le meme port. Par exemple, https://app.example.com et https://api.example.com sont des origines differentes car l'hote differe. La politique de meme origine empeche un site malveillant de lire des donnees sensibles d'un autre site -- le CORS est le mecanisme qui assouplit cette restriction de maniere controlee.
Requetes simples vs. Preflight
Une "requete simple" utilise GET, HEAD ou POST avec uniquement des en-tetes securises CORS et ne declenche pas de preflight. Toutes les autres requetes cross-origin -- celles utilisant des methodes comme PUT ou DELETE, ou incluant des en-tetes comme Authorization -- declenchent un preflight : le navigateur envoie d'abord une requete OPTIONS pour demander la permission au serveur avant d'envoyer la requete reelle.
Comment fonctionne CORS
Requête simple
Origin: https://app.example.com
Access-Control-Allow-Origin: *
Requête de pré-vérification
Access-Control-Request-Method: DELETE
Access-Control-Allow-Methods: DELETE
Origin: https://app.example.com
En-têtes CORS
Erreurs courantes
Guides associés
Codes de statut HTTP
Référence complète de tous les codes de statut HTTP avec descriptions et exemples.
ParcourirEn-têtes HTTP
En-têtes HTTP courants expliqués avec syntaxe, exemples et valeurs courantes.
ParcourirMéthodes HTTP
Guide complet des méthodes de requête HTTP avec tableaux comparatifs et exemples.
ParcourirTypes MIME
Référence complète des types MIME courants avec extensions de fichiers, catégories et exemples d'utilisation.
Parcourir