Class CorsFilter
- java.lang.Object
-
- org.jboss.resteasy.plugins.interceptors.CorsFilter
-
- All Implemented Interfaces:
javax.ws.rs.container.ContainerRequestFilter,javax.ws.rs.container.ContainerResponseFilter
@PreMatching public class CorsFilter extends Object implements javax.ws.rs.container.ContainerRequestFilter, javax.ws.rs.container.ContainerResponseFilter
Handles CORS requests both preflight and simple CORS requests. You must bind this as a singleton and set up allowedOrigins and other settings to use.- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanallowCredentialsprotected StringallowedHeadersprotected StringallowedMethodsprotected Set<String>allowedOriginsprotected intcorsMaxAgeprotected StringexposedHeaders
-
Constructor Summary
Constructors Constructor Description CorsFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckOrigin(javax.ws.rs.container.ContainerRequestContext requestContext, String origin)voidfilter(javax.ws.rs.container.ContainerRequestContext requestContext)voidfilter(javax.ws.rs.container.ContainerRequestContext requestContext, javax.ws.rs.container.ContainerResponseContext responseContext)StringgetAllowedHeaders()StringgetAllowedMethods()Will allow all by default.Set<String>getAllowedOrigins()Put "*" if you want to accept all origins.intgetCorsMaxAge()StringgetExposedHeaders()booleanisAllowCredentials()Defaults to true.protected voidpreflight(String origin, javax.ws.rs.container.ContainerRequestContext requestContext)voidsetAllowCredentials(boolean allowCredentials)voidsetAllowedHeaders(String allowedHeaders)Will allow all by default comma delimited string for Access-Control-Allow-Headers.voidsetAllowedMethods(String allowedMethods)Will allow all by default comma delimited string for Access-Control-Allow-Methods.voidsetCorsMaxAge(int corsMaxAge)voidsetExposedHeaders(String exposedHeaders)Comma delimited list.
-
-
-
Method Detail
-
getAllowedOrigins
public Set<String> getAllowedOrigins()
Put "*" if you want to accept all origins.- Returns:
- allowed origins
-
isAllowCredentials
public boolean isAllowCredentials()
Defaults to true.- Returns:
- allow credentials
-
setAllowCredentials
public void setAllowCredentials(boolean allowCredentials)
-
getAllowedMethods
public String getAllowedMethods()
Will allow all by default.- Returns:
- allowed methods
-
setAllowedMethods
public void setAllowedMethods(String allowedMethods)
Will allow all by default comma delimited string for Access-Control-Allow-Methods.- Parameters:
allowedMethods- allowed methods
-
getAllowedHeaders
public String getAllowedHeaders()
-
setAllowedHeaders
public void setAllowedHeaders(String allowedHeaders)
Will allow all by default comma delimited string for Access-Control-Allow-Headers.- Parameters:
allowedHeaders- allowed headers
-
getCorsMaxAge
public int getCorsMaxAge()
-
setCorsMaxAge
public void setCorsMaxAge(int corsMaxAge)
-
getExposedHeaders
public String getExposedHeaders()
-
setExposedHeaders
public void setExposedHeaders(String exposedHeaders)
Comma delimited list.- Parameters:
exposedHeaders- exposed headers
-
filter
public void filter(javax.ws.rs.container.ContainerRequestContext requestContext) throws IOException- Specified by:
filterin interfacejavax.ws.rs.container.ContainerRequestFilter- Throws:
IOException
-
filter
public void filter(javax.ws.rs.container.ContainerRequestContext requestContext, javax.ws.rs.container.ContainerResponseContext responseContext) throws IOException- Specified by:
filterin interfacejavax.ws.rs.container.ContainerResponseFilter- Throws:
IOException
-
preflight
protected void preflight(String origin, javax.ws.rs.container.ContainerRequestContext requestContext) throws IOException
- Throws:
IOException
-
checkOrigin
protected void checkOrigin(javax.ws.rs.container.ContainerRequestContext requestContext, String origin)
-
-