web-dev-qa-db-fra.com

XMLHttpRequest bloqué par la stratégie CORS

J'ajoute une API avec le script suivant, disons http://www.test.com :

<script src="http://apiendpoint.com/api/v1/api.js"></script>

<div id="api" data-apikey="LA59CJI9HZ-KIJK4I5-3CKJC"></div>

api.js

$(function () {

  apikey = $('#api').data('apikey');
  $("#api").load("http://apiendpoint.com?apikey=" + apikey);

})

Lorsque je charge la page, j'obtiens l'erreur suivante:

XMLHttpRequest ne peut pas charger apiendpoint URL . La redirection de ' apiendpoint URL ' vers ' apiendpoint URL ' a été bloquée. par stratégie CORS: Aucun en-tête 'Access-Control-Allow-Origin' n'est présent sur la ressource demandée. L'origine de l'URL de test 'n'est donc pas autorisée.

Dans le chemin de apiendpoint.com, j'ai ajouté le code suivant .htaccess:

Header set Access-Control-Allow-Origin "*"

Mais ça ne marche pas.

21
Prolativ

Je crois que la réponse de sideshowbarker ici a toutes les informations dont vous avez besoin pour résoudre ce problème. Si votre problème est simplement qu'aucun en-tête 'Access-Control-Allow-Origin' n'est présent sur la réponse que vous obtenez, vous pouvez configurer un proxy CORS pour contourner ce problème. Plus d'informations à ce sujet dans la réponse liée

7
foakesm