Problème
Je développe actuellement une application html, mais reçois le message d'erreur suivant lorsque je tente d'appeler des images Scene7 :
XMLHttpRequest ne peut pas charger http://company.scene7.com/is/image/Company/image. Origin http://www.clientCompany.com n'est pas autorisé par Access-Control-Allow-Origin.
Utilisez CORS (Cross-Origin-Resource-Sharing) : http://enable-cors.org/server.html
pour l'exécuter, le serveur company.scene7.com doit ajouter l'entête suivant :
Access-Control-Allow-Origin: *
Cette option n'est pas disponible pour les serveurs Scene7, vous pouvez utiliser un jeu de règles pour obtenir le même résultat :
Solution
<?xml version="1.0" encoding="UTF-8"?>
<ruleset>
<rule OnMatch="continue">
<expression>.a=pft</expression>
<header Name="Access-Control-Allow-Origin" Action="set">pft.company.com</header>
</rule>
<rule>
<expression>.a=www</expression>
<header Name="Access-Control-Allow-Origin" Action="set">www.company.com</header>
</rule>
<rule>
<expression>.a=dev</expression>
<header Name="Access-Control-Allow-Origin" Action="set">dev.company.com</header>
</rule>
</ruleset>
Notez qu’il n’y a pas de caractère générique, de sorte que chaque environnement (développement, intégration, production, etc.) nécessite une règle distincte.
L’objet de l'ensemble de règles correspond à un modificateur spécifique et ajoute Access-Control-Allow-Origin qui correspond à ce modificateur. Voici des exemples d’URL utilisant les règles définies ci-dessus :
http://s7d7.scene7.com/is/image/Company/temp1?.a=pft
http://s7d7.scene7.com/is/image/Company/temp1?.a=dev
http://s7d7.scene7.com/is/image/Company/temp1?.a=www
Adobe
Recevez de l’aide plus rapidement et plus facilement
Nouvel utilisateur ?