CORS を使用した API の呼び出し
CORS (クロス・オリジン・リソース共有) は、ブラウザーで実行されているコードからサード・パーティー・サーバー (実行されている API など) への呼び出しを可能にする技法です。 これらの呼び出しは、ブラウザーのサンドボックスに適用される同一発信元セキュリティー・ポリシーに従い、デフォルトでは許可されません。 CORS サポートがない場合、Web 開発者は、サーバー・サイド・プロキシーなどのより複雑な技法を使用する必要があります。
このタスクについて
注: CORS サポートは、 DataPower® API Gatewayでのみ使用可能です。
Gateway サーバーは、CORS をサポートして、Web 開発者が Web アプリケーション内で API を使用できるようにします。CORS は、次のブラウザーでサポートされます。
- Chrome 3+
- Firefox 3.5+
- Internet Explorer V11 以上
- Opera 12+
- Safari 4+
CORS が有効なブラウザーは自動的に、元の要求に Origin ヘッダーの付いたもので構成されたシンプルな CORS 要求を送信するか、プリフライト要求を送信した後にシンプルな CORS 要求を送信します。
CORS プリフライト要求の例は以下のとおりです。
OPTIONS /org/env/api/resourceHTTP/1.1
User-Agent: useragent details
Access-Control-Request-Method: GET
Access-Control-Request-Headers: header names
Host: x.xx.xxx.xx
Origin: https://example.com
Accept: */*テストやトラブルシューティングの目的以外で CORS 要求を自分で作成する必要はありません。
CORS 応答はゲートウェイから受信されます。以下に例を示します。
HTTP/1.1 200 OK
X-Backside-Transport: FAIL FAIL
Connection: Keep-Alive
Transfer-Encoding: chunked
Access-Control-Allow-Origin: https://example.com
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers:accept, accept-language, content-type, x-ibm-client-id
Access-Control-Allow-Methods: methods allowed on the resource
Vary: Origin