前后端分離跨域springBoot跨域有效解決問題
前后端分離跨域springBoot跨域有效解決
之前一直聽過跨域這個詞,以前的項目也有跨域需要處理,但是自己未參與也未曾看過別人是怎么解決的。
最近有個前后端完全分離項目, 需要解決一下跨域問題;解決完了就簡單在此記錄一下
同源策略
請求的url地址,必須與瀏覽器上的url地址處于同域上,也就是域名,端口,協(xié)議相同.
比如:我在前端頁面上的域名是3000端口,請求后臺項目端口為8000的域名
這個時候在瀏覽器上會報錯:

這樣后臺肯定是進不去,所以直接上代碼。
以下是springboot解決方案
import org.springframework.boot.web.servlet.FilterRegistrationBean;
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 MyConfiguration {
@Bean
public FilterRegistrationBean corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
// 設(shè)置域名你要允許的網(wǎng)站,如果全允許則設(shè)為 *
//config.addAllowedOrigin("http://127.0.0.1:3000");
config.addAllowedOrigin("*");
// 如果要限制 HEADER 或 METHOD 請自行更改
config.addAllowedHeader("x-requested-with,content-type,requesttype");
config.addAllowedMethod("*");
source.registerCorsConfiguration("/**", config);
FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source));
// 這個順序很重要哦,為避免麻煩請設(shè)置在最前
bean.setOrder(0);
return bean;
}
}頁面ajax正常請求就可以訪問了
url示例:
http://127.0.0.1:80/person/checkStatusPerson
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java.lang.Runtime.exec() Payload知識點詳解
在本篇文章里小編給大家整理的是一篇關(guān)于java.lang.Runtime.exec() Payload知識點相關(guān)內(nèi)容,有興趣的朋友們學習下。2020-03-03
Java?SpringBoot?獲取接口實現(xiàn)類匯總
這篇文章主要介紹了Java?SpringBoot?獲取接口實現(xiàn)類匯總,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09
idea插件之mybatis log plugin控制臺sql的問題
這篇文章主要介紹了idea插件之mybatis log plugin控制臺sql,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09
Java編程實現(xiàn)beta分布的采樣或抽樣實例代碼
這篇文章主要介紹了Java編程實現(xiàn)beta分布的采樣或抽樣實例,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下2018-01-01
Java中ConcurrentHashMap是如何實現(xiàn)線程安全
ConcurrentHashMap是一個哈希表,支持檢索的全并發(fā)和更新的高預(yù)期并發(fā)。本文主要介紹了Java中ConcurrentHashMap是如何實現(xiàn)線程安全,感興趣的可以了解一下2021-11-11
Spring Boot實現(xiàn)郵件服務(wù)(附:常見郵箱的配置)
這篇文章主要給大家介紹了關(guān)于Spring Boot實現(xiàn)郵件服務(wù)的相關(guān)資料,文中還附上了常見郵箱的配置,通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-12-12

