欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于Gateway網(wǎng)關(guān)中配置跨域的三種方案

 更新時間:2024年11月16日 09:52:48   作者:龍茶清歡  
文章總結(jié):介紹了三種處理跨域請求的方法:在Controller類上添加注解、通過配置類實現(xiàn)重寫WebMvcConfigurer接口和在配置文件中統(tǒng)一設(shè)置,希望這些方法能幫助讀者解決跨域問題

Gateway網(wǎng)關(guān)中配置跨域的三種方案

方法一

直接在每個Controller類上添加跨域注解

@CrossOrigin

方法二

通過配置類統(tǒng)一處理

@Configuration
public class CorsConfig {

    
    // 該配置適用于reactive響應(yīng)式環(huán)境
    @Bean
    public CorsWebFilter corsFilter() {
        CorsConfiguration config = new CorsConfiguration();
        config.addAllowedOrigin("*");
        config.addAllowedHeader("*");
        // springboot升級成2.4.0以上時對AllowedOrigin設(shè)置發(fā)生了改變,不能有”*“,可以替換成AllowedOriginPattern
        config.addAllowedOriginPattern("*");
        config.setAllowCredentials(true);

        // 必須是reactive包下的UrlBasedCorsConfigurationSource 
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(new PathPatternParser());
        source.registerCorsConfiguration("/**", config);

        return new CorsWebFilter(source);


    // 該配置適用于servlet環(huán)境
    @Bean
    public CorsFilter corsFilter() {
        //1. 添加 CORS配置信息
        CorsConfiguration config = new CorsConfiguration();
        //放行哪些請求方式
        config.addAllowedMethod("*");
        //放行哪些原始請求頭部信息
        config.addAllowedHeader("*");
        //放行哪些原始域
        config.addAllowedOriginPattern("*");
        //是否發(fā)送 Cookie
        config.setAllowCredentials(true);
        //2. 添加映射路徑
        UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource();
        corsConfigurationSource.registerCorsConfiguration("/**",config);
        //3. 返回新的CorsFilter
        return new CorsFilter(corsConfigurationSource);
    }

重寫WebMvcConfigurer接口的默認(rèn)方法

@Configuration
public class CorsConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedMethods("*")
                .allowedHeaders("*")
                .allowedOriginPatterns("*")
                .allowCredentials(true);
    }
}

方法三

在配置application.properties或者application.yml文件中進行統(tǒng)一配置

spring:
  cloud:
    gateway:
      globalcors:
        cors-configurations:
          '[/**]':
            allowedMethods: "*"
            allowedHeaders: "*"
            allowedOriginPatterns: "*"
            allowCredentials: true

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringCloud添加客戶端Eureka Client過程解析

    SpringCloud添加客戶端Eureka Client過程解析

    這篇文章主要介紹了SpringCloud添加客戶端Eureka Client過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • 解決SpringMvc后臺接收json數(shù)據(jù)中文亂碼問題的幾種方法

    解決SpringMvc后臺接收json數(shù)據(jù)中文亂碼問題的幾種方法

    本篇文章主要介紹了解決SpringMvc后臺接收json數(shù)據(jù)中文亂碼問題的幾種方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Java超詳細(xì)分析@Autowired原理

    Java超詳細(xì)分析@Autowired原理

    @Autowired注解可以用在類屬性,構(gòu)造函數(shù),setter方法和函數(shù)參數(shù)上,該注解可以準(zhǔn)確地控制bean在何處如何自動裝配的過程。在默認(rèn)情況下,該注解是類型驅(qū)動的注入
    2022-06-06
  • Java面向?qū)ο笾b類的用途與實際使用

    Java面向?qū)ο笾b類的用途與實際使用

    所謂包裝類,就是能夠直接將簡單類型的變量表示為一個類,在執(zhí)行變量類型的相互轉(zhuǎn)換時,我們會大量使用這些包裝類,本文我們來深入探索一下Java包裝類的相關(guān)內(nèi)容,需要的朋友可以參考下
    2022-03-03
  • java.nio.file.WatchService?實時監(jiān)控文件變化的示例代碼

    java.nio.file.WatchService?實時監(jiān)控文件變化的示例代碼

    在?Java?語言中,從?JDK7?開始,新增了java.nio.file.WatchService類,用來實時監(jiān)控文件的變化,這篇文章主要介紹了java.nio.file.WatchService?實時監(jiān)控文件變化,需要的朋友可以參考下
    2022-05-05
  • Java垃圾回收之標(biāo)記清除算法詳解

    Java垃圾回收之標(biāo)記清除算法詳解

    今天小編就為大家分享一篇關(guān)于Java垃圾回收之標(biāo)記清除算法詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • idea項目中target文件提示拒絕訪問的解決

    idea項目中target文件提示拒絕訪問的解決

    這篇文章主要介紹了idea項目中target文件提示拒絕訪問的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • SpringBoot利用MDC機制過濾單次請求的所有日志

    SpringBoot利用MDC機制過濾單次請求的所有日志

    在服務(wù)出現(xiàn)故障時,我們經(jīng)常需要獲取一次請求流程里的所有日志進行定位 ,如何將一次數(shù)據(jù)上報請求中包含的所有業(yè)務(wù)日志快速過濾出來,就是本文要介紹的,需要的朋友可以參考下
    2024-04-04
  • java實現(xiàn)兩個線程交替打印的實例代碼

    java實現(xiàn)兩個線程交替打印的實例代碼

    在本篇文章里小編給大家整理的是一篇關(guān)于java實現(xiàn)兩個線程交替打印的相關(guān)知識點內(nèi)容,有需要的朋友們參考下。
    2019-12-12
  • Java中關(guān)于MouseWheelListener的鼠標(biāo)滾輪事件詳解

    Java中關(guān)于MouseWheelListener的鼠標(biāo)滾輪事件詳解

    這篇文章主要介紹了Java中關(guān)于MouseWheelListener的鼠標(biāo)滾輪事件詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12

最新評論