springBoot 解决前后端分离项目中跨越请求,同源策略
今天在做項(xiàng)目的過(guò)程,采用前后端分離技術(shù)的時(shí)遇到采用ajax請(qǐng)求無(wú)法訪問(wèn)后臺(tái)接口,按F12,查看瀏覽器運(yùn)行狀態(tài)時(shí),報(bào)如下錯(cuò)誤
為了解決瀏覽的同源策略,就必須了解什么是同源策略。
1.什么是同源策略
同源策略(Same origin policy)是一種約定,它是瀏覽器最核心也最基本的安全功能,如果缺少了同源策略,則瀏覽器的正常功能可能都會(huì)受到影響。可以說(shuō)Web是構(gòu)建在同源策略基礎(chǔ)之上的,瀏覽器只是針對(duì)同源策略的一種實(shí)現(xiàn)。
而所謂同源是指,域名,協(xié)議,端口相同。如靜態(tài)資源所在的服務(wù)器和后端接口所在服務(wù)器不是同一個(gè)服務(wù)器時(shí),必然需要跨域獲取數(shù)據(jù)
2.解決同源策略,實(shí)現(xiàn)數(shù)據(jù)的跨院?jiǎn)栴}的方法
?在springboot的啟動(dòng)類(lèi)下編寫(xiě)以下代碼,并引入紅色代碼部分對(duì)應(yīng)的包 package com.example.bookdinner;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter;@SpringBootApplication public class BookdinnerApplication {public static void main(String[] args) {SpringApplication.run(BookdinnerApplication.class, args);}private CorsConfiguration buildConfig() {CorsConfiguration corsConfiguration = new CorsConfiguration();corsConfiguration.addAllowedOrigin("*");corsConfiguration.addAllowedHeader("*");corsConfiguration.addAllowedMethod("*");return corsConfiguration;}/*** 跨域過(guò)濾器* @return*/@Beanpublic CorsFilter corsFilter() {UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();source.registerCorsConfiguration("/**", buildConfig()); // 4return new CorsFilter(source);}}將代碼編寫(xiě)完后,重啟后臺(tái)服務(wù),便可以解決同源策略問(wèn)題,此時(shí)便可以訪問(wèn)后臺(tái)的接口。
此方法可行,筆者親身嘗試過(guò)
轉(zhuǎn)載于:https://www.cnblogs.com/linchen1300/p/9683728.html
總結(jié)
以上是生活随笔為你收集整理的springBoot 解决前后端分离项目中跨越请求,同源策略的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: html视频透明背景怎么设置,微信透明背
- 下一篇: 【pyqt5学习】——graphicVi