Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

En-tête Access-Control-Allow-Origin

Baseline Widely available

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis ⁨juillet 2015⁩.

L'en-tête de réponse HTTP Access-Control-Allow-Origin indique si la réponse peut être partagée avec le code demandeur provenant de l'origine donnée.

Type d'en-tête En-tête de réponse

Syntaxe

http
Access-Control-Allow-Origin: *
Access-Control-Allow-Origin: <origin>
Access-Control-Allow-Origin: null

Directives

* (joker)

Le code demandeur de n'importe quelle origine est autorisé à accéder à la ressource. Pour les requêtes sans justificatifs, la valeur littérale * peut être définie comme joker. Tenter d'utiliser le joker avec des justificatifs entraîne une erreur.

<origin>

Définit une seule origine. Si le serveur prend en charge des clients de plusieurs origines, il doit retourner l'origine pour le client spécifique qui fait la demande.

null

Définit l'origine « null ».

Note : La valeur null ne doit pas être utilisée. Il peut sembler sûr de retourner Access-Control-Allow-Origin: "null" ; cependant, l'origine des ressources qui utilisent un schéma non hiérarchique (comme data: ou file:) et des documents isolés est sérialisée en null. De nombreux navigateurs accorderont à ces documents l'accès à une réponse avec un en-tête Access-Control-Allow-Origin: null, et n'importe quelle origine peut créer un document hostile avec une origine null. Par conséquent, la valeur null pour l'en-tête Access-Control-Allow-Origin doit être évitée.

Exemples

Pour permettre à n'importe quelle ressource d'accéder à vos ressources, vous pouvez indiquer :

http
Access-Control-Allow-Origin: *

Pour permettre https://developer.mozilla.org d'accéder à vos ressources, vous pouvez indiquer :

http
Access-Control-Allow-Origin: https://developer.mozilla.org

Limiter les valeurs possibles d'Access-Control-Allow-Origin à un ensemble d'origines autorisées nécessite du code côté serveur pour vérifier la valeur de l'en-tête de requête Origin, la comparer à une liste d'origines autorisées, puis, si la valeur de Origin est dans la liste, définir la valeur d'Access-Control-Allow-Origin sur la même valeur que celle de Origin.

CORS et le cache

Si le serveur envoie une réponse avec une valeur d'Access-Control-Allow-Origin contenant une origine explicite (plutôt que le joker *), la réponse doit également inclure un en-tête de réponse Vary avec la valeur Origin — pour indiquer aux navigateurs que les réponses du serveur peuvent différer selon la valeur de l'en-tête de requête Origin.

http
Access-Control-Allow-Origin: https://developer.mozilla.org
Vary: Origin

Spécifications

Specification
Fetch
# http-access-control-allow-origin

Compatibilité des navigateurs

Voir aussi