首頁 > 書法

SpringBoot解決跨域問題(CORS)

作者:由 Java技術愛好者 發表于 書法日期:2023-01-15

跨域訪問是指什麼

跨域資源共享(CORS)是前後端分離專案很常見的問題,本文主要是介紹在Springboot專案中透過cors協議解決跨域問題

SpringBoot解決跨域問題(CORS)

CORS協議

CORS是一個W3C標準,全稱是“跨域資源共享”(Cross-origin resource sharing)。

它允許瀏覽器向跨源伺服器,發出XMLHttpRequest請求,從而克服了AJAX只能同源使用的限制。

解決方案

1.基於WebMvcConfigurerAdapter配置加入Cors的跨域

透過實現WebMvcConfigurer介面中的addCorsMappings方法來實現跨域

SpringBoot解決跨域問題(CORS)

addMapping:配置可以被跨域的路徑,可以任意配置

allowedOrigins:* 代表允許所有的請求域名訪問我們的跨域資源

allowCredentials

:響應頭表示是否可以將請求的響應暴露給頁面

allowedMethods:允許所有的請求header訪問,可以自定義設定任意請求頭資訊

maxAge:配置客戶端快取預檢請求的響應時間(單位為秒)

2.採用過濾器(filter)的方式

SpringBoot解決跨域問題(CORS)

Spring官方文件學習地址:

https://spring。io/blog/2015/06/08/cors-support-in-spring-framework