CORS 設定の有効化

ブラウザには、ブラウザ要求からドメイン(基本ページのドメイン以外)の応答にアクセスする関数の Cross-Origin Resource Sharing(CORS)が必要です。クロスドメインのアクセス権を該当するすべての ADRUM_n ヘッダーに明示的に付与する必要があります。

CORS 設定を有効にするには、次の手順を実行します。

  1. Amazon API ゲートウェイで必要な AWS レスポンスヘッダーを定義します。詳細なヘッダーおよび追加情報については、AWS のドキュメントを参照してください。
    • Access-Control-Expose-Headers :カスタム ADRUM ヘッダーをマップします。これらのヘッダーには、JavaScript エージェントと互換性を確保できるように ADRUM_0ADRUM_3 という名前を使用する必要があります。たとえば、ADRUM_0ADRUM_1ADRUM_2ADRUM_3 です。
    • Access-Control-Allow-Methods:適切なメソッドを使用してヘッダーを選択します。たとえば、POSTOPTIONS です。

    • Access-Control-Allow-Origin :スキーマ、ホスト名、ポートなど、リクエストを発信した Web ページの完全な URL に設定します。単一引用符で URL を囲みます。例:'http://my-saas-service.com:8000'
  2. CORS を有効にした後、レスポンスヘッダーマッピングを定義する必要があります。Amazon API ゲートウェイでレスポンスヘッダーマッピングを設定するには、Amazon ドキュメントを参照してください。以下のリストに、レスポンスヘッダーと CORS 設定のマッピング値の例を示します。
    • Access-Control-Expose-Headers: `ADRUM_0, ADRUM_1, ADRUM_2, ADRUM_3`
    • Access-Control-Allow-Credentials: `true`
    • Access-Control-Allow-Methods: `POST,OPTIONS`
    • Access-Control-Allow-Origin: `http://my-saas-service.com:8000`
  3. オプション: プロキシ統合を介して Amazon API ゲートウェイに関数を接続する場合は、関数コード内の CORS レスポンスヘッダーマッピングを定義します。
    //Return EUM Metadata
    let appDEumHeaders = tracer.getEumMetadata(appDBusinessTxn);
    let returnHeaders = {
    'Access-Control-Allow-Origin': 'http://my-saas-service.com:8000',
    'Access-Control-Allow-Credentials': true,
    'Access-Control-Expose-Headers': 'ADRUM_0,ADRUM_1,ADRUM_2,ADRUM_3'
    };