@TargetSE(valueSE={TYPESE,METHODSE}) @RetentionSE(valueSE=RUNTIMESE) @DocumentedSE public @interface CrossOrigin
HandlerMapping が構成されている場合に処理されます。Spring Web MVC と Spring WebFlux はどちらも、それぞれのモジュールの RequestMappingHandlerMapping を通じてこのアノテーションをサポートしています。アノテーションの各型とメソッドレベルのペアからの値が CorsConfiguration に追加され、次に CorsConfiguration.applyPermitDefaultValues() を介してデフォルト値が適用されます。
グローバル構成とローカル構成を組み合わせるためのルールは、一般的に追加的です。すべてのグローバルおよびすべてのローカルの起源。allowCredentials や maxAge など、単一の値しか受け入れられない属性の場合、ローカルはグローバル値をオーバーライドします。詳細については、CorsConfiguration.combine(CorsConfiguration) を参照してください。
| 修飾子と型 | フィールドと説明 |
|---|---|
static boolean | DEFAULT_ALLOW_CREDENTIALS 使用すべきではありません。 Spring 5.0 現在、 CorsConfiguration.applyPermitDefaultValues() を推奨 |
static StringSE[] | DEFAULT_ALLOWED_HEADERS 使用すべきではありません。 Spring 5.0 現在、 CorsConfiguration.applyPermitDefaultValues() を推奨 |
static long | DEFAULT_MAX_AGE 使用すべきではありません。 Spring 5.0 現在、 CorsConfiguration.applyPermitDefaultValues() を推奨 |
static StringSE[] | DEFAULT_ORIGINS 使用すべきではありません。 Spring 5.0 現在、 CorsConfiguration.applyPermitDefaultValues() を推奨 |
| 修飾子と型 | オプションの要素と説明 |
|---|---|
StringSE | allowCredentials ブラウザーが、ドメイン間リクエストとともに Cookie などの資格情報をアノテーション付きエンドポイントに送信するかどうか。 |
StringSE[] | allowedHeaders 実際のリクエストで許可されるリクエストヘッダーのリスト。 "*" を使用すると、すべてのヘッダーを許可できます。 |
StringSE | allowPrivateNetwork プライベートネットワークアクセスがサポートされているかどうか。 |
StringSE[] | exposedHeaders ユーザーエージェントが実際のレスポンスでクライアントにアクセスを許可するレスポンスヘッダーのリスト。おそらく "*" がすべてのヘッダーを公開します。 |
long | maxAge プリフライトレスポンスのキャッシュ期間の最大経過時間(秒単位)。 |
RequestMethod[] | methods サポートされる HTTP リクエストメソッドのリスト。 |
StringSE[] | originPatterns より柔軟な原点パターンをサポートする origins() の代替。 |
StringSE[] | origins クロスオリジンリクエストが許可されているオリジンのリスト。 |
StringSE[] | valueorigins() のエイリアス。 |
@DeprecatedSE public static final StringSE[] DEFAULT_ORIGINS
CorsConfiguration.applyPermitDefaultValues() に置き換えられました。@DeprecatedSE public static final StringSE[] DEFAULT_ALLOWED_HEADERS
CorsConfiguration.applyPermitDefaultValues() に置き換えられました。@DeprecatedSE public static final boolean DEFAULT_ALLOW_CREDENTIALS
CorsConfiguration.applyPermitDefaultValues() に置き換えられました。@DeprecatedSE public static final long DEFAULT_MAX_AGE
CorsConfiguration.applyPermitDefaultValues() に置き換えられました。@AliasFor(value="value") public abstract StringSE[] origins
CorsConfiguration.setAllowedOrigins(List) を参照してください。 デフォルトでは、originPatterns() も設定されていない限り、すべてのオリジンが許可されます。設定されている場合は、代わりに originPatterns が使用されます。
public abstract StringSE[] originPatterns
origins() の代替。詳しくは CorsConfiguration.setAllowedOriginPatterns(List) を参照してください。デフォルトでは、これは設定されていません。
public abstract StringSE[] allowedHeaders
"*" ですべてのヘッダーが許可されます。詳細は CorsConfiguration.setAllowedHeaders(List) を参照してください。デフォルトでは、リクエストされたすべてのヘッダーが許可されます。
public abstract StringSE[] exposedHeaders
"*" がすべてのヘッダーを公開します。詳細は CorsConfiguration.setExposedHeaders(List) を参照してください。デフォルトでは、公開されているヘッダーは表示されません。
public abstract RequestMethod[] methods
CorsConfiguration.setAllowedMethods(List) を参照してください。デフォルトでは、サポートされているメソッドは、コントローラーメソッドがマップされているメソッドと同じです。
public abstract StringSE allowCredentials
CorsConfiguration.setAllowCredentials(Boolean) を参照してください。注意 : このオプションは、構成されたドメインとの高レベルの信頼を確立し、Cookie や CSRF トークンなどのユーザー固有の機密情報を公開することにより、Web アプリケーションの表面攻撃を増やすことに注意してください。
デフォルトでは、これは設定されていません。その場合、Access-Control-Allow-Credentials ヘッダーも設定されないため、資格情報は許可されません。
public abstract StringSE allowPrivateNetwork
CorsConfiguration.setAllowPrivateNetwork(Boolean) を参照してください。デフォルトでは、これは設定されていません (つまり、プライベートネットワークアクセスはサポートされていません)。