解决跨域问题

1、如果是springMVC框架

      a) 继承Filter类,然后重写doFilter方法

  

  

        @Override
        public void doFilter(ServletRequest request, ServletResponse servletResponse,
                                       FilterChain chain) throws IOException, ServletException {


                  HttpServletResponse response = (HttpServletResponse) servletResponse;
                  response.setHeader("Access-Control-Allow-Origin", "*");
                  response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
                  response.setHeader("Access-Control-Max-Age", "3600");
                  response.setHeader("Access-Control-Allow-Headers", "x-requested-with,Authorization");
                  response.setHeader("Access-Control-Allow-Credentials","true");
                 chain.doFilter(request, servletResponse);

        }

2、如果是springBoot框架

  @Bean
public FilterRegistrationBean corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
config.addAllowedOrigin("*");
config.addAllowedHeader("*");
config.addAllowedMethod("*");
source.registerCorsConfiguration("/**", config);
FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source));
bean.setOrder(0);
return bean;
}

 

posted @ 2018-04-11 09:14  人生如茶几  阅读(136)  评论(0)    收藏  举报