当前位置:主页 > 网页前端 > vue >

利用SpringMVC过滤器解决vue跨域请求的问题

时间:2021-04-25 10:11:07 | 栏目:vue | 点击:

之前写过通过注释的方法解决跨域请求的方法,需要每次都在controll类使用注解,这次通过springmvc的拦截器解决:

继承SpringMVC的类HandlerInterceptor重写preHandle方法,这个方法会在到达 controll之前调用,如下

public boolean preHandle(HttpServletRequest request, HttpServletResponse response, 
        Object handler) throws Exception { 
  response.setHeader("Access-Control-Allow-Origin", "*"); 
  response.setHeader("Access-Control-Allow-Methods", "*"); 
  response.setHeader("Access-Control-Max-Age", "3600"); 
  response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); 
  response.setHeader("Access-Control-Allow-Credentials","true"); //是否允许浏览器携带用户身份信息(cookie) 
  return true; 
 } 

springmvc配置如下:

<mvc:interceptors > 
 <!--过滤所有请求,处理跨域请求问题--> 
  <mvc:interceptor> 
   <mvc:mapping path="/**"/> 
   <bean class="com.jzy.interceptor.CommonInterceptor"></bean> 
  </mvc:interceptor> 
</mvc:interceptors > 

这样既可解决SSM+VUE前后端分离时跨域请求的限制。

您可能感兴趣的文章:

相关文章