springBoot解决前后端分离项⽬中跨越请求,同源策略
今天在做项⽬的过程,采⽤前后端分离技术的时遇到采⽤ajax请求⽆法访问后台接⼝,按F12,查看浏览器运⾏状态时,报如下错误
为了解决浏览的同源策略,就必须了解什么是同源策略。
1.什么是同源策略
同源策略(Same origin policy)是⼀种约定,它是浏览器最核⼼也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的⼀种实现。
springframework和springboot⽽所谓同源是指,域名,协议,端⼝相同。如静态资源所在的服务器和后端接⼝所在服务器不是同⼀个服务器时,必然需要跨域获取数据
2.解决同源策略,实现数据的跨院问题的⽅法
在springboot的启动类下编写以下代码,并引⼊红⾊代码部分对应的包
ample.bookdinner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import t.annotation.Bean;
import org.s.CorsConfiguration;
import org.s.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;
}
/**
* 跨域过滤器
* @return
*/
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
return new CorsFilter(source);
}
}
将代码编写完后,重启后台服务,便可以解决同源策略问题,此时便可以访问后台的接⼝。
此⽅法可⾏,笔者亲⾝尝试过

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。