2016-05-26 13 views
0

私はエンドポイントを構築しています(/v1/getdataとしましょう)。このエンドポイントは、ajaxとサーバーからサーバーへの呼び出しを処理します。このエンドポイントは、それを使用するウェブサイト(起点はhttp://www.t.comとする)とは異なるため、CORSを実装してajax呼び出しを行う必要があります。私は、Originヘッダーにhttp://www.t.comというメッセージがある場合には、応答にAccess-Control-Allow-Origin: *ヘッダーを追加する必要があることを知っているので、ブラウザはクロスオリジンからのajaxコールを受け入れます。ajax呼び出しとサーバーからサーバーへの呼び出しに対応するCORSの処理

しかし、サーバーからサーバーへの呼び出しでは、Originヘッダーは送信されません。このための最良のアプローチは何ですか?サーバーからの要求に手動でOriginヘッダーを追加する必要がありますか?

答えて

1

APIを公開する場合は、すべての応答にAccess-Control-Allow-Origin: *を追加するだけです。

あなたが唯一の特定のサイトが利用できるようにしている場合は、あなたが使用する必要があるロジックは次のとおりです。

Is the Origin request header present? 
    If not, don't add an Access-Control-Allow-Origin response header 
Is the Origin one that is on your whitelist of acceptable sites? 
    If not, don't add an Access-Control-Allow-Origin response header 
    Otherwise, add an Access-Control-Allow-Origin response header 
       with a value that matches the Origin request header 
関連する問題