I have a Spring Boot App with a RestController, a custom Security Filter and an Angular 2 Application which requests data from the spring service.
Because of the Access-Control-Allow-Origin Issue I have a Filter which sets the header.
This works fine if I call localhost:4200 to localhost:8080 but it doesn't work from localhost:4200 to some ip xx.xx.xx.xx:8080.
So someone have an idea?
Here my Filter:
@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() {
}
}