最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot給所有接口配置跨域的方法詳解

 更新時(shí)間:2025年09月19日 10:16:03   作者:兔子先生°  
簡(jiǎn)單而言,跨域請(qǐng)求就是當(dāng)一臺(tái)服務(wù)器資源從另一臺(tái)服務(wù)器(不同 的域名或者端口)請(qǐng)求一個(gè)資源或者接口,就會(huì)發(fā)起一個(gè)跨域 HTTP 請(qǐng)求,本文給大家介紹了SpringBoot給所有接口配置跨域的方法,需要的朋友可以參考下

跨域配置方法

在Spring Boot中,可以通過以下幾種方式為所有接口統(tǒng)一配置跨域支持:

關(guān)鍵配置說明:

  • ??allowedOriginPatterns(“*”)??
    允許所有域名訪問(生產(chǎn)環(huán)境建議替換為具體域名如 “https://yourdomain.com”)
  • allowedMethods(“*”)??
    允許所有 HTTP 方法(GET/POST/PUT/DELETE 等)
  • allowCredentials(true)??
    允許攜帶 Cookie 等憑證信息(前端需設(shè)置 withCredentials: true)
  • maxAge(3600)??
    預(yù)檢請(qǐng)求(OPTIONS)結(jié)果的緩存時(shí)間(單位:秒)

全局CORS配置

通過WebMvcConfigurer接口實(shí)現(xiàn)全局跨域配置:

@Configuration
public class CorsConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")
                .allowedOrigins("*")
                .allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
                .allowedHeaders("*")
                .allowCredentials(false)
                .maxAge(3600);
    }
}

使用注解方式

在啟動(dòng)類上添加@CrossOrigin注解:

@SpringBootApplication
@CrossOrigin(origins = "*")
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

過濾器方式

創(chuàng)建CORS過濾器實(shí)現(xiàn)全局跨域:

@Component
public class CorsFilter implements Filter {
    @Override
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) 
        throws IOException, ServletException {
        HttpServletResponse response = (HttpServletResponse) res;
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Headers", "*");
        chain.doFilter(req, res);
    }
}

配置文件方式

application.propertiesapplication.yml中配置:

# application.properties
spring.mvc.cors.allowed-origins=*
spring.mvc.cors.allowed-methods=GET,POST,PUT,DELETE

# application.yml
spring:
  mvc:
    cors:
      allowed-origins: "*"
      allowed-methods: GET,POST,PUT,DELETE

注意事項(xiàng)

  • 生產(chǎn)環(huán)境不建議使用allowedOrigins("*"),應(yīng)指定具體域名
  • 啟用allowCredentials時(shí)不能使用通配符*,必須指定具體域名
  • OPTIONS預(yù)檢請(qǐng)求的緩存時(shí)間可通過maxAge設(shè)置
  • 前端需要攜帶自定義請(qǐng)求頭時(shí),必須在allowedHeaders中明確聲明

以上就是SpringBoot給所有接口配置跨域的方法詳解的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot接口配置跨域的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Spring Boot下使用logback 記錄多個(gè)文件日志

    詳解Spring Boot下使用logback 記錄多個(gè)文件日志

    這篇文章主要介紹了詳解Spring Boot下使用logback 記錄多個(gè)文件日志,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • JDBC下Idea添加mysql-jar包的詳細(xì)過程

    JDBC下Idea添加mysql-jar包的詳細(xì)過程

    這篇文章主要介紹了JDBC下Idea添加mysql-jar包的詳細(xì)過程,添加jar包首先到官網(wǎng)下載jar包,然后idea導(dǎo)入jar包,在就是檢查,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-11-11
  • springboot中使用okhttp3的小結(jié)

    springboot中使用okhttp3的小結(jié)

    OkHttp3是一個(gè)Java HTTP客戶端,可以處理各種請(qǐng)求類型,比如 GET、POST、PUT 等,并且支持高效的 HTTP 連接池、請(qǐng)求和響應(yīng)緩存、以及異步請(qǐng)求處理等,感興趣的可以了解一下
    2025-09-09
  • 打造一款代碼命名工具的詳細(xì)教程

    打造一款代碼命名工具的詳細(xì)教程

    這篇文章主要介紹了來,我們一起打造一款代碼命名工具,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java實(shí)現(xiàn)Redisson分布式鎖的10大陷阱與避坑指南

    Java實(shí)現(xiàn)Redisson分布式鎖的10大陷阱與避坑指南

    本文介紹了Redisson分布式鎖的基礎(chǔ)用法與高級(jí)特性,包括基本鎖操作、公平鎖、讀寫鎖、聯(lián)鎖和紅鎖等實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-04-04
  • Java?SSM框架講解

    Java?SSM框架講解

    這篇文章主要介紹了什么是SSM框架,SSM框架是spring、spring?MVC?、和mybatis框架的整合,是標(biāo)準(zhǔn)的MVC模式。想進(jìn)一步了解的同學(xué)可以詳細(xì)參考本文
    2023-03-03
  • Mybatis之#{}與${}的區(qū)別使用詳解

    Mybatis之#{}與${}的區(qū)別使用詳解

    這篇文章主要介紹了Mybatis之#{}與${}的區(qū)別詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Spring配置文件中密碼明文改為密文處理的通用方式

    Spring配置文件中密碼明文改為密文處理的通用方式

    SpringBoot和SpringCloud中涉及多個(gè)配置文件,配置文件中對(duì)于密碼默認(rèn)是明文方式,這種方式在生產(chǎn)環(huán)境一般是不被允許的,為避免配置文件中出現(xiàn)明文,應(yīng)當(dāng)在配置文件中配置為密文,然后在啟動(dòng)時(shí)在程序內(nèi)部完成解密,本文提供了通用的處理方式,需要的朋友可以參考下
    2025-01-01
  • java實(shí)現(xiàn)百度云文字識(shí)別接口代碼

    java實(shí)現(xiàn)百度云文字識(shí)別接口代碼

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)百度云文字識(shí)別的接口代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Java中toString方法的深度解析與應(yīng)用場(chǎng)景詳解

    Java中toString方法的深度解析與應(yīng)用場(chǎng)景詳解

    這篇文章主要介紹了Java中的toString方法及其重寫的重要性和注意事項(xiàng),包括信息的完整性、簡(jiǎn)潔性、格式的統(tǒng)一性、避免性能問題和遞歸循環(huán)等問題,文中將解決的辦法介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04

最新評(píng)論

宜阳县| 肥东县| 冷水江市| 襄垣县| 阿克| 平顶山市| 夏河县| 宜君县| 宣武区| 兰州市| 普宁市| 博白县| 萨迦县| 湘阴县| 延津县| 茶陵县| 榆树市| 西安市| 遂昌县| 维西| 南丹县| 双柏县| 涟水县| 积石山| 民县| 上蔡县| 东台市| 赫章县| 阿巴嘎旗| 西林县| 且末县| 江津市| 佛教| 赤水市| 白城市| 济源市| 乡城县| 阿瓦提县| 双流县| 和田县| 阿勒泰市|