shiro跨域CORS問題處理

2021-10-03 09:57:09 字數 1527 閱讀 3025

跨域問題後端有四種方法可以解決:

如果是使用的shiro以上步驟都試過了,還有如下問題,請看本文章的解決辦法。

把主要提示拷貝出來

跨域問題導致的,cookie帶不過去,重定向失敗。1.明確這個情況是跨域導致的問題。

(1)跨域:其實已經使用這個文章(的方式2:重寫webmvcconfigurer解決了,在進行前後端聯調的時候,介面已經可以調通了。

@configuration

public class webmvcconfg implements webmvcconfigurer

}

(2)但是在調節其中乙個ajax請求的時候,後端許可權使用的springboot+shiro實現的,發現原來的跨域**重寫webmvcconfigurer不管用了。

(3)原因:原來的邏輯是使用者請求->webmvcconfigurer設定header->controller,

spring boot整合shiro之後使用者請求->shiro的***->shiro邏輯->webmvcconfigurer設定header->controller,

預設所有請求會先經過shiro的***,在執行shiro**邏輯的時候跨域出錯了,所以上面的全域性方法已經不管用了

在shiro**之前設定header,解決跨域問題就好了。所以按如下增加配置,並且可以重寫webmvcconfigure的方式去掉

import org.springframework.context.annotation.bean;

import org.springframework.context.annotation.configuration;

import org.springframework.web.cors.corsconfiguration;

import org.springframework.web.cors.urlbasedcorsconfigurationsource;

import org.springframework.web.filter.corsfilter;

/** * @auther: administrator

* @date:

* @description:

*/@configuration

public class corsconfig

@bean

public corsfilter corsfilter()

}

最後:這個是針對shiro特殊情況的處理,如果是有跨域問題還沒定位問題請先看跨域的基本處理辦法:

cors解決跨域問題

cors是乙個w3c標準,全稱是 跨域資源共享 cross origin resource sharing 它允許瀏覽器向跨源伺服器,發出xmlhttprequest請求,從而克服了ajax只能同源使用的限制。cors需要瀏覽器和伺服器同時支援。目前,所有瀏覽器都支援該功能,ie瀏覽器不能低於ie1...

zuul security跨域Cors問題解決

場景 在服務後台都會出現跨域cors問題,不過一般spring解決起來比較方便,在框架 框架的基礎上,問題就顯得特別明顯了,各種衝突,不了解原始碼的執行原理,解決起來也是有心無力。這裡介紹的是zuul配置了跨域,在前端呼叫仍然會出現跨域的問題。一般沒有許可權的介面加上cors配置就會通過跨域的問題。...

CORS解決跨域問題

在前後端分離的背景下,我想大部分人都有過跨域問題,那我們先來了解一下什麼是跨域問題。當乙個資源從與該資源本身所在的伺服器不同的域 協議或埠請求乙個資源時,資源會發起乙個跨域http請求。例子 當遊覽器從a網域名稱的網頁,去請求b網域名稱的資源時,網域名稱 埠 協議任一不同,都是跨域。ajax suc...