Annotation Interface CrossOrigin
HandlerMapping
 is configured.
 Both Spring Web MVC and Spring WebFlux support this annotation through the
 RequestMappingHandlerMapping in their respective modules. The values
 from each type and method level pair of annotations are added to a
 CorsConfiguration and then default values are applied via
 CorsConfiguration.applyPermitDefaultValues().
 
The rules for combining global and local configuration are generally
 additive -- e.g. all global and all local origins. For those attributes
 where only a single value can be accepted such as allowCredentials
 and maxAge, the local overrides the global value.
 See CorsConfiguration.combine(CorsConfiguration) for more details.
- Since:
- 4.2
- Author:
- Russell Allen, Sebastien Deleuze, Sam Brannen, Ruslan Akhundov
- 
Optional Element SummaryOptional ElementsModifier and TypeOptional ElementDescriptionWhether the browser should send credentials, such as cookies along with cross domain requests, to the annotated endpoint.String[]The list of request headers that are permitted in actual requests, possibly"*"to allow all headers.String[]The List of response headers that the user-agent will allow the client to access on an actual response, possibly"*"to expose all headers.longThe maximum age (in seconds) of the cache duration for preflight responses.The list of supported HTTP request methods.String[]Alternative toorigins()that supports more flexible origin patterns.String[]A list of origins for which cross-origin requests are allowed.String[]Alias fororigins().
- 
Element Details- 
valueAlias fororigins().- Default:
- {}
 
- 
originsA list of origins for which cross-origin requests are allowed. Please, seeCorsConfiguration.setAllowedOrigins(List)for details.By default all origins are allowed unless originPatterns()is also set in which caseoriginPatternsis used instead.- Default:
- {}
 
- 
originPatternsString[] originPatternsAlternative toorigins()that supports more flexible origin patterns. Please, seeCorsConfiguration.setAllowedOriginPatterns(List)for details.By default this is not set. - Since:
- 5.3
 - Default:
- {}
 
- 
allowedHeadersString[] allowedHeadersThe list of request headers that are permitted in actual requests, possibly"*"to allow all headers. Please, seeCorsConfiguration.setAllowedHeaders(List)for details.By default all requested headers are allowed. - Default:
- {}
 
- 
exposedHeadersString[] exposedHeadersThe List of response headers that the user-agent will allow the client to access on an actual response, possibly"*"to expose all headers. Please, seeCorsConfiguration.setExposedHeaders(List)for details.By default no headers are listed as exposed. - Default:
- {}
 
- 
methodsRequestMethod[] methodsThe list of supported HTTP request methods. Please, seeCorsConfiguration.setAllowedMethods(List)for details.By default the supported methods are the same as the ones to which a controller method is mapped. - Default:
- {}
 
- 
allowCredentialsString allowCredentialsWhether the browser should send credentials, such as cookies along with cross domain requests, to the annotated endpoint. Please, seeCorsConfiguration.setAllowCredentials(Boolean)for details.NOTE: Be aware that this option establishes a high level of trust with the configured domains and also increases the surface attack of the web application by exposing sensitive user-specific information such as cookies and CSRF tokens. By default this is not set in which case the Access-Control-Allow-Credentialsheader is also not set and credentials are therefore not allowed.- Default:
- ""
 
- 
maxAgelong maxAgeThe maximum age (in seconds) of the cache duration for preflight responses.This property controls the value of the Access-Control-Max-Ageresponse header of preflight requests.Setting this to a reasonable value can reduce the number of preflight request/response interactions required by the browser. A negative value means undefined. By default this is set to 1800seconds (30 minutes).- Default:
- -1L
 
 
-