7

この質問: CORS をサポートするサーバー? 通常のサーブレットに関するものでした。CORSを制御するためにヘッダーを設定する方法を知っています。

私の質問は、CORS 制限の下で静的コンテンツを提供するように Tomcat を構成する方法です。

4

3 に答える 3

15

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 ヘッダーが送信されることに注意してください。CORS フローチャート

(tomcat.apache.org/tomcat-8.0-doc/images/cors-flowchart.png)

于 2013-09-13T14:49:38.500 に答える
1

CORS サポートを追加するための Tomcat フィルターは次のとおりです: https://bitbucket.org/jsumners/corsfilter

于 2012-08-21T18:25:25.460 に答える