跨域请求问题出现时往往伴随以下报错信息:
...has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
解决问题也很简单,我是基于Java服务器:
@WebFilter("/*")
public class AccessControlAllowOriginFilter implements Filter {
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Allow-Credentials", "true");
chain.doFilter(req, response);
}
public void init(FilterConfig filterConfig) {
}
public void destroy() {
}
}
然后将这个过滤器配置到项目中,上面是用注解进行配置