アノテーションインターフェース CrossOrigin
HandlerMapping が構成されている場合に処理されます。Spring Web MVC と Spring WebFlux はどちらも、それぞれのモジュールの RequestMappingHandlerMapping を通じてこのアノテーションをサポートしています。アノテーションの各型とメソッドレベルのペアからの値が CorsConfiguration に追加され、次に CorsConfiguration.applyPermitDefaultValues() を介してデフォルト値が適用されます。
 グローバル構成とローカル構成を組み合わせるためのルールは、一般的に追加的です。すべてのグローバルおよびすべてのローカルの起源。allowCredentials や maxAge など、単一の値しか受け入れられない属性の場合、ローカルはグローバル値をオーバーライドします。詳細については、CorsConfiguration.combine(CorsConfiguration) を参照してください。
- 導入:
- 4.2
- 作成者:
- Russell Allen, Sebastien Deleuze, Sam Brannen, Ruslan Akhundov
- オプション要素の概要オプション要素修飾子と型オプションの要素説明ブラウザーが、ドメイン間リクエストとともに Cookie などの資格情報をアノテーション付きエンドポイントに送信するかどうか。- StringSE[]実際のリクエストで許可されるリクエストヘッダーのリスト。- "*"を使用すると、すべてのヘッダーを許可できます。プライベートネットワークアクセスがサポートされているかどうか。- StringSE[]ユーザーエージェントが実際のレスポンスでクライアントにアクセスを許可するレスポンスヘッダーのリスト。おそらく- "*"がすべてのヘッダーを公開します。- longプリフライトレスポンスのキャッシュ期間の最大経過時間(秒単位)。サポートされる HTTP リクエストメソッドのリスト。- StringSE[]より柔軟な原点パターンをサポートする- origins()の代替。- StringSE[]クロスオリジンリクエストが許可されているオリジンのリスト。- StringSE[]- origins()のエイリアス。
- 要素の詳細- value- origins()のエイリアス。- デフォルト:
- {}
 
- originsクロスオリジンリクエストが許可されているオリジンのリスト。詳しくは- CorsConfiguration.setAllowedOrigins(List)を参照してください。- デフォルトでは、 - originPatterns()も設定されていない限り、すべてのオリジンが許可されます。設定されている場合は、代わりに- originPatternsが使用されます。- デフォルト:
- {}
 
- originPatternsStringSE[] originPatternsより柔軟な原点パターンをサポートする- origins()の代替。詳しくは- CorsConfiguration.setAllowedOriginPatterns(List)を参照してください。- デフォルトでは、これは設定されていません。 - 導入:
- 5.3
 - デフォルト:
- {}
 
- allowedHeadersStringSE[] allowedHeaders実際のリクエストで許可されるリクエストヘッダーのリスト。おそらく- "*"ですべてのヘッダーが許可されます。詳細は- CorsConfiguration.setAllowedHeaders(List)を参照してください。- デフォルトでは、リクエストされたすべてのヘッダーが許可されます。 - デフォルト:
- {}
 
- exposedHeadersStringSE[] exposedHeadersユーザーエージェントが実際のレスポンスでクライアントにアクセスを許可するレスポンスヘッダーのリスト。おそらく- "*"がすべてのヘッダーを公開します。詳細は- CorsConfiguration.setExposedHeaders(List)を参照してください。- デフォルトでは、公開されているヘッダーは表示されません。 - デフォルト:
- {}
 
- methodsRequestMethod[] methodsサポートされている HTTP リクエストメソッドのリスト。詳細は- CorsConfiguration.setAllowedMethods(List)を参照してください。- デフォルトでは、サポートされているメソッドは、コントローラーメソッドがマップされているメソッドと同じです。 - デフォルト:
- {}
 
- allowCredentialsStringSE allowCredentialsブラウザーが、クロスドメインリクエストとともに Cookie などの認証情報をアノテーション付きエンドポイントに送信する必要があるかどうか。詳細は- CorsConfiguration.setAllowCredentials(Boolean)を参照してください。- 注意 : このオプションは、構成されたドメインとの高レベルの信頼を確立し、Cookie や CSRF トークンなどのユーザー固有の機密情報を公開することにより、Web アプリケーションの表面攻撃を増やすことに注意してください。 - デフォルトでは、これは設定されていません。その場合、 - Access-Control-Allow-Credentialsヘッダーも設定されないため、資格情報は許可されません。- デフォルト:
- ""
 
- allowPrivateNetworkStringSE allowPrivateNetworkプライベートネットワークアクセスがサポートされているかどうか。詳細は- CorsConfiguration.setAllowPrivateNetwork(Boolean)を参照してください。- デフォルトでは、これは設定されていません (つまり、プライベートネットワークアクセスはサポートされていません)。 - 導入:
- 6.1.3
 - デフォルト:
- ""
 
- maxAgelong maxAgeプリフライトレスポンスのキャッシュ期間の最大経過時間(秒単位)。- このプロパティは、プリフライトリクエストの - Access-Control-Max-Ageレスポンスヘッダーの値を制御します。- これを適切な値に設定すると、ブラウザーが必要とするプリフライトリクエスト / レスポンス対話の数を減らすことができます。負の値は未定義を意味します。 - デフォルトでは、 - 1800秒(30 分)に設定されています。- デフォルト:
- -1L