GlassFish: How to set Access-Control-Allow-Origin header

后端 未结 4 727
没有蜡笔的小新
没有蜡笔的小新 2020-12-05 21:49

I am using the latest version of GlassFish. I want to set the Access-Control-Allow-Origin header in response so that my API which is hosted on GlassFish can be called from a

4条回答
  •  我在风中等你
    2020-12-05 22:41

    Here is a Java EE standard way to do it. It's almost exactly the same as the Jersey example except for the library packages used (javax) and the method call to get the headers is different (getHeaders).

    import java.io.IOException;
    import javax.ws.rs.container.ContainerRequestContext;
    import javax.ws.rs.container.ContainerResponseContext;
    import javax.ws.rs.container.ContainerResponseFilter;
    import javax.ws.rs.ext.Provider;
    
    @Provider
    public class RestResponseFilter implements ContainerResponseFilter{
    
    @Override
        public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException{
            responseContext.getHeaders().putSingle("Access-Control-Allow-Origin", "*");
            responseContext.getHeaders().putSingle("Access-Control-Allow-Credentials", "true");
            responseContext.getHeaders().putSingle("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT");
            responseContext.getHeaders().putSingle("Access-Control-Allow-Headers", "Content-Type, Accept");
        }
    
    }
    

提交回复
热议问题