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 boolean
allowCredentials
protected String
allowedHeaders
protected String
allowedMethods
protected Set<String>
allowedOrigins
protected int
corsMaxAge
protected String
exposedHeaders
-
Constructor Summary
Constructors Constructor Description CorsFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkOrigin(javax.ws.rs.container.ContainerRequestContext requestContext, String origin)
void
filter(javax.ws.rs.container.ContainerRequestContext requestContext)
void
filter(javax.ws.rs.container.ContainerRequestContext requestContext, javax.ws.rs.container.ContainerResponseContext responseContext)
String
getAllowedHeaders()
String
getAllowedMethods()
Will allow all by default.Set<String>
getAllowedOrigins()
Put "*" if you want to accept all origins.int
getCorsMaxAge()
String
getExposedHeaders()
boolean
isAllowCredentials()
Defaults to true.protected void
preflight(String origin, javax.ws.rs.container.ContainerRequestContext requestContext)
void
setAllowCredentials(boolean allowCredentials)
void
setAllowedHeaders(String allowedHeaders)
Will allow all by default comma delimited string for Access-Control-Allow-Headers.void
setAllowedMethods(String allowedMethods)
Will allow all by default comma delimited string for Access-Control-Allow-Methods.void
setCorsMaxAge(int corsMaxAge)
void
setExposedHeaders(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:
filter
in 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:
filter
in 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)
-
-