この質問: CORS をサポートするサーバー? 通常のサーブレットに関するものでした。CORSを制御するためにヘッダーを設定する方法を知っています。
私の質問は、CORS 制限の下で静的コンテンツを提供するように Tomcat を構成する方法です。
この質問: CORS をサポートするサーバー? 通常のサーブレットに関するものでした。CORSを制御するためにヘッダーを設定する方法を知っています。
私の質問は、CORS 制限の下で静的コンテンツを提供するように Tomcat を構成する方法です。
Tomcat 7.0.41 以降では、組み込みフィルターを介して CORS の動作を簡単に制御できます。
参考文献:
あなたがしなければならないことは、グローバルweb.xmlを編集しCATALINA_HOME/confてフィルター定義を追加することだけです。
<!-- ================== 組み込みのフィルター定義 ===================== -->
...
<フィルター>
<filter-name>CorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</フィルター>
<フィルターマッピング>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- ==================== ビルトイン フィルター マッピング ===================== -->
Access-Control-Allow-Origin: *ただし、Firefox はクレデンシャル (Cookie) を使用したリクエストを好まないことに注意してください。クレデンシャル付きのリクエストに応答する場合、サーバーはドメインを指定する必要があり、ワイルドカードは使用できません。
この状況でリクエストをデバッグする場合は、次のフローチャートに従ってクロスオリジン リクエストがある場合にのみ CORS ヘッダーが送信されることに注意してください。
(tomcat.apache.org/tomcat-8.0-doc/images/cors-flowchart.png)
CORS サポートを追加するための Tomcat フィルターは次のとおりです: https://bitbucket.org/jsumners/corsfilter