工作,我有一个Spring应用程序启动与RestController,自定义的安全过滤器和角2应用程序从春季服务请求数据。春季启动角2和访问控制允许来源不上服务器
由于访问控制允许来源发行我有一个过滤器,其设置报头。
如果我叫本地主机也能正常工作:4200为localhost:8080,但它不从本地主机的工作:4200一些IP XX.XX.XX.XX:8080。
所以有人有一个想法?
这里我筛选:
@Component
public class MyCorsFilter implements Filter {
public MyCorsFilter() {
System.out.println("init filter corsssss");
}
@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With, remember-me");
chain.doFilter(req, res);
}
@Override
public void init(FilterConfig filterConfig) {
}
@Override
public void destroy() {
}
}
看来这仅仅是一个“本地主机”行为,如果我在服务器上部署了Spring启动应用程序和角度应用程序,那么过滤器运行良好并设置了访问控制标题。 – deadpoint