Maison > interface Web > js tutoriel > Pourquoi est-ce que je reçois une erreur XMLHttpRequest : « Aucun en-tête \ « Access-Control-Allow-Origin » présent ?

Pourquoi est-ce que je reçois une erreur XMLHttpRequest : « Aucun en-tête \ « Access-Control-Allow-Origin » présent ?

Mary-Kate Olsen
Libérer: 2024-11-04 03:10:02
original
449 Les gens l'ont consulté

Why Am I Getting an XMLHttpRequest Error: 'No 'Access-Control-Allow-Origin' Header Present?

Erreur XMLHttpRequest : 'Aucun en-tête 'Access-Control-Allow-Origin' présent

Dans ce projet, un fichier XML hébergé sur www .ecb.europa.eu est référencé pour la conversion des devises. Cependant, une erreur est rencontrée en raison de la politique de même origine.

La politique de même origine interdit les requêtes inter-domaines. Dans ce cas, la page HTML se trouve dans un domaine différent (par exemple, run.jsbin.com) que le fichier XML (ecb.europa.eu). Par conséquent, la demande est considérée comme une Demande de partage de ressources cross-origine (CORS).

Communication CORS

Pour activer CORS, le serveur qui répond à la requête doit inclure des en-têtes spécifiques, notamment 'Access-Control-Allow-Origin'.

  • Le navigateur envoie la requête avec un en-tête 'Origin' indiquant le domaine de la page HTML.
  • Si le serveur répond avec l'en-tête 'Access-Control-Allow-Origin' correspondant à l'origine, la requête est autorisée. Sinon, la demande est bloquée.

Correction de l'erreur

Pour résoudre le problème, le serveur de fichiers XML doit être configuré pour ajouter le 'Access- En-tête Control-Allow-Origin' à ses réponses. Cet en-tête peut être défini sur la même origine (par exemple, « Access-Control-Allow-Origin : http://run.jsbin.com ») ou « * » pour autoriser l'accès depuis n'importe quelle origine.

Si la configuration côté serveur n'est pas possible, un proxy miroir peut être utilisé pour intercepter la requête et ajouter les en-têtes nécessaires avant de la transmettre au serveur réel.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal