完美解決Spring Boot前端的Access-Control-Allow-Origin跨域問(wèn)題
當(dāng)我們?cè)谧銮昂蠖朔蛛x的開(kāi)發(fā)時(shí),在使用fetch交換數(shù)據(jù)的時(shí)候,提示Access-Control-Allow-Origin跨域問(wèn)題,解決方案跟客戶端沒(méi)關(guān)系,修改的是服務(wù)端。
一、在過(guò)濾器中設(shè)置響應(yīng)頭:
@WebFilter(filterName = "CorsFilter ") public class CorsFilter implements Filter { @Override public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { HttpServletResponse response = (HttpServletResponse) res; HttpServletRequest reqs = (HttpServletRequest) req; // response.setHeader("Access-Control-Allow-Origin",reqs.getHeader("Origin")); response.setHeader("Access-Control-Allow-Origin","*"); response.setHeader("Access-Control-Allow-Credentials", "true"); response.setHeader("Access-Control-Allow-Methods", "POST, GET, PATCH, DELETE, PUT"); response.setHeader("Access-Control-Max-Age", "3600"); response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); chain.doFilter(req, res); } @Override public void init(FilterConfig filterConfig) {} @Override public void destroy() {} }
二、在spring boot 服務(wù)中心添加一個(gè)配置文件:
@Configuration public class CorsConfig extends WebMvcConfigurerAdapter { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**").allowedOrigins("*") .allowedMethods("GET", "HEAD", "POST","PUT", "DELETE", "OPTIONS") .allowCredentials(true).maxAge(3600); } }
到此這篇關(guān)于完美解決Spring Boot前端的Access-Control-Allow-Origin跨域問(wèn)題的文章就介紹到這了,更多相關(guān)springboot Access-Control-Allow-Origin跨域內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何修改FeginCilent定義的服務(wù)名到指定服務(wù)
這篇文章主要介紹了修改FeginCilent定義的服務(wù)名到指定服務(wù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07Java結(jié)構(gòu)型設(shè)計(jì)模式之適配器模式詳解
適配器模式,即將某個(gè)類(lèi)的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口的表示,主要目的是實(shí)現(xiàn)兼容性,讓原本因?yàn)榻涌诓黄ヅ洌瑳](méi)辦法一起工作的兩個(gè)類(lèi),可以協(xié)同工作。本文將通過(guò)示例詳細(xì)介紹適配器模式,需要的可以參考一下2022-09-09Mybatis一對(duì)多關(guān)聯(lián)關(guān)系映射實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了Mybatis一對(duì)多關(guān)聯(lián)關(guān)系映射實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02使用java實(shí)現(xiàn)BBS論壇發(fā)送郵件過(guò)程詳解
這篇文章主要介紹了使用java發(fā)送郵件過(guò)程詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04java swing實(shí)現(xiàn)的掃雷游戲及改進(jìn)版完整示例
這篇文章主要介紹了java swing實(shí)現(xiàn)的掃雷游戲及改進(jìn)版,結(jié)合完整實(shí)例形式對(duì)比分析了java使用swing框架實(shí)現(xiàn)掃雷游戲功能與相關(guān)操作技巧,需要的朋友可以參考下2017-12-12springboot2.3之后hibernate-validator依賴缺失【踩坑】
這篇文章主要介紹了springboot2.3之后hibernate-validator依賴缺失【踩坑】,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11詳解Mybatis 傳遞參數(shù)類(lèi)型為L(zhǎng)ist的取值問(wèn)題
這篇文章主要介紹了詳解Mybatis 傳遞參數(shù)類(lèi)型為L(zhǎng)ist的取值問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10java基于包結(jié)構(gòu)的請(qǐng)求路由實(shí)現(xiàn)實(shí)例分享
基于包結(jié)構(gòu)的請(qǐng)求路由簡(jiǎn)單實(shí)現(xiàn)實(shí)例分享,大家參考使用吧2013-12-12使用Spring Initializr創(chuàng)建Spring Boot項(xiàng)目沒(méi)有JDK1.8的解決辦法
很久沒(méi)創(chuàng)建springboot項(xiàng)目,今天使用idea的Spring Initializr 創(chuàng)建 Spring Boot項(xiàng)目時(shí),發(fā)現(xiàn)java版本里,無(wú)法選擇jdk1.8,只有17、21、22,所以本文介紹了使用Spring Initializr創(chuàng)建Spring Boot項(xiàng)目沒(méi)有JDK1.8的解決辦法,需要的朋友可以參考下2024-06-06