問題点

HTML アプリケーションを開発していますが、Scene7 から画像を呼び出そうとすると次のエラーが表示されます:

XMLHttpRequest は http://company.scene7.com/is/image/Company/image 読み込むことができません。オリジン http://www.clientCompany.com は Access-Control-Allow-Origin に許可されていません。

CORS(クロスオリジンリソース共有)を使用します:http://enable-cors.org/server.html
対応するには、company.scene7.com サーバーは次のヘッダーを追加する必要があります。

Access-Control-Allow-Origin: *

このオプションは Scene7 サーバで使用できないので、ルールセットを用いて同じエフェクトを取得することができます。

解決策

<?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>

ワイルドカードが可能なものはありません、そのため各環境(開発、統合、製造など)には個別のルールが必要であることにご留意ください。

ルールセットは特定の修飾子と一致し、その修飾子と一致する Access-Control-Allow-Origin を追加します。以下に上記の定義例を使用した URL 例を示します

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


本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー