之前寫過通過注釋的方法解決跨域請(qǐng)求的方法,需要每次都在controll類使用注解,這次通過springmvc的攔截器解決:
繼承SpringMVC的類HandlerInterceptor重寫preHandle方法,這個(gè)方法會(huì)在到達(dá) controll之前調(diào)用,如下
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 > <!--過濾所有請(qǐng)求,處理跨域請(qǐng)求問題--> <mvc:interceptor> <mvc:mapping path="/**"/> <bean class="com.jzy.interceptor.CommonInterceptor"></bean> </mvc:interceptor> </mvc:interceptors >
這樣既可解決SSM+VUE前后端分離時(shí)跨域請(qǐng)求的限制。
以上這篇利用SpringMVC過濾器解決vue跨域請(qǐng)求的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持錯(cuò)新站長(zhǎng)站。
新聞熱點(diǎn)
疑難解答
圖片精選