shiro攔截後地址跳轉跨域
不使用@CrosOrigin註解解決跨域問題,使用過濾器:示例使用CorsFilter,也就是一個封裝瞭解決跨域問題的filter而已。
由於CorsFilter是定義在Web容器中的過濾器(實現了javax.servlet.Filter),因此其執行順序先於Servlet,而SpringMVC的入口是DispatchServlet,因此該Filter會先於SpringMVC的所有攔截器執行。分析程式碼可知,CorsFilter可以對獲取的單個請求對應的Cors配置做相應的處理。這樣當請求到達攔截器前,做跨域嗅探的OPTIONS請求已經得到答案返回了,經過測試並不會到達攔截器。
package com.example.pahms.config;
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;
@Configuration
public class GlobalCorsConfig {
@Bean
public CorsFilter corsFilter() {
CorsConfiguration config = new CorsConfiguration();
config.addAllowedOrigin("*");
config.setAllowCredentials(true);
config.addAllowedMethod("*");
config.addAllowedHeader("*");
config.addExposedHeader("token");
UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();
configSource.registerCorsConfiguration("/**", config);
return new CorsFilter(configSource);
}
}
相關文章
- SpringBoot解決跨域請求攔截Spring Boot跨域
- SpringBoot 整合 Shiro 實現登入攔截Spring Boot
- SpringBoot--- Shiro(攔截,認證)、Thymeleaf(模板引擎)Spring Boot
- 基於 HTTP 請求攔截,快速解決跨域和代理 MockHTTP跨域Mock
- Shiro入門這篇就夠了【Shiro的基礎知識、回顧URL攔截】
- 鴻蒙Navigation攔截器實現頁面跳轉登入鑑權方案鴻蒙Navigation
- SpringBoot-shiro登入攔截.使用者認證.整合MybatisSpring BootMyBatis
- Asp.Netcore使用Filter來實現介面的全域性異常攔截,以及前置攔截和後置攔截ASP.NETNetCoreFilter
- Proxy 攔截
- SpringMVC攔截器,設定不攔截的URLSpringMVC
- 前端架構之vue+axios 前端實現登入攔截(路由攔截、http攔截)前端架構VueiOS路由HTTP
- Spring MVC 中的攔截器的使用“攔截器基本配置” 和 “攔截器高階配置”SpringMVC
- SpringMVC攔截器SpringMVC
- axios 攔截器iOS
- spring攔截器Spring
- axios攔截器iOS
- sql攔截器SQL
- 導彈攔截
- Mybatis 攔截器MyBatis
- MyBatis攔截器MyBatis
- 後端跨域配置(通用)後端跨域
- Java後臺開發學習(2)——攔截器Java
- SpringMVC(2)- 非同步呼叫、非同步請求-跨域訪問、攔截器、異常處理、實用技術SpringMVC非同步跨域
- 什麼是跨域,後端工程師如何處理跨域跨域後端工程師
- win10 microsoft edge網址被攔截如何取消攔截Win10ROS
- 前後端實現登入token攔截校驗後端
- Xposed攔截抽象方法抽象
- Mybatis Interceptor 攔截器MyBatis
- WKCrashSDK - crash攔截工具
- spring boot 攔截器Spring Boot
- SpringMVC-攔截器SpringMVC
- gRPC(3):攔截器RPC
- 【SpringMVC】 4.3 攔截器SpringMVC
- 跨域請求後端配置跨域後端
- SpringBoot攔截器中獲取註解、攔截器中注入ServiceSpring Boot
- Springboot中登入後關於cookie和session攔截案例Spring BootCookieSession
- 使用MyBatis攔截器後,摸魚時間又長了。?MyBatis
- Flume內建攔截器與自定義攔截器(程式碼實戰)