Created
July 30, 2014 11:26
-
-
Save cristobal/b5b35cc4ed483396797e to your computer and use it in GitHub Desktop.
CorsFilter for Jersey JAX-RS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import javax.annotation.Priority; | |
import javax.ws.rs.Priorities; | |
import javax.ws.rs.container.ContainerRequestContext; | |
import javax.ws.rs.container.ContainerResponseContext; | |
import javax.ws.rs.container.ContainerResponseFilter; | |
import javax.ws.rs.core.MultivaluedMap; | |
import javax.ws.rs.ext.Provider; | |
import java.io.IOException; | |
// @see http://simplapi.wordpress.com/2013/04/10/jersey-jax-rs-implements-a-cross-domain-filter/ | |
// Turn off by commenting out @Provider or using ConfigValue... | |
@Provider | |
@Priority(Priorities.AUTHORIZATION) | |
public class CorsResponseFilter implements ContainerResponseFilter { | |
@Override | |
public void filter(ContainerRequestContext containerRequestContext, ContainerResponseContext containerResponseContext) throws IOException { | |
MultivaluedMap<String, Object> headers = containerResponseContext.getHeaders(); | |
headers.add("Access-Control-Allow-Origin", "*"); | |
headers.add("Access-Control-Allow-Headers", "origin, content-type, accept, authorization"); | |
headers.add("Access-Control-Allow-Credentials", "true"); | |
headers.add("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD"); | |
headers.add("Access-Control-Max-Age", "1209600"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment