No 'Access

跨域说明

前后端分离下,跨域已是一个老生常谈的话题,但很多小伙伴还是经常面临这样的问题,且解决方案多变多样。这里介绍一种简单直接的后端解决方案。

解决跨域(服务端)

1/** 2 * CorsConfig-跨域 3 * 4 * @author ylyue 5 * @since 2018年11月26日 6 */ 7@Slf4j 8@Configuration 9public class CorsFilterConfig { 10 11 // CorsConfig-跨域 12 13 @Bean 14 @ConditionalOnMissingBean 15 public CorsFilter corsFilter() { 16 final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); 17 final CorsConfiguration config = new CorsConfiguration(); 18 19 config.setAllowCredentials(true); 20 config.setAllowedHeaders(Arrays.asList("*")); 21 config.setAllowedMethods(Arrays.asList("*")); 22 config.setAllowedOrigins(Arrays.asList("*")); 23 config.setMaxAge(3600L); 24 25 // 设置response允许暴露的Headers 26// config.setExposedHeaders(exposedHeaders); 27// config.addExposedHeader("token"); 28 29 source.registerCorsConfiguration("/**", config); 30 31 log.info("【初始化配置-跨域】默认任何情况下都允许跨域访问 ... 已初始化完毕。"); 32 return new CorsFilter(source); 33 } 34 35}

基于yue-library解决跨域

上述代码就是从yue-library中摘出来的,所以基于yue-library的项目默认已解决跨域等问题。yue-library是SpringBoot的一个增强库,引入项目依赖即可解决跨域

maven项目,在pom.xml文件中添加如下一段代码,并将${version}替换为对应版本号:maven-central

1<parent> 2 <groupId>ai.ylyue</groupId> 3 <artifactId>yue-library-dependencies</artifactId> 4 <version>${version}</version> 5</parent>

随后引入所需要的模块,如基础库:yue-library-base

1<dependencies> 2 <dependency> 3 <groupId>ai.ylyue</groupId> 4 <artifactId>yue-library-base</artifactId> 5 </dependency> 6 ... 7</dependencies>

点击快速了解yue-library

结语

跨域问题建议服务端解决即可,没必要开启跨域安全访问限制,他也只能阻止一些浏览器中的JS脚本注入,并不能做到真正的安全访问限制。有问题欢迎在下方留言交流...

点赞
收藏

评论区

加载中...

相关推荐

什么是跨域以及如何解决?通俗易懂带你彻底搞定

什么是跨域以及如何解决?通俗易懂带你彻底搞定现在的web项目,很多都是前后端分离,特别容易出现跨域问题那么什么是跨域问题呢?本篇文章带你彻底从本质上弄明白什么是跨域问题以及如何解决一跨域有什么现象?我们先看一下

springboot的跨域

https://www.cnblogs.com/520playboy/p/7306008.html1、对于前后端分离的项目来说,如果前端项目与后端项目部署在两个不同的域下,那么势必会引起跨域问题的出现。针对跨域问题,我们可能第一个想到的解决方案就是jsonp,并且以前处理跨域问题我基本也是这么处理。但是jsonp方式也同样有不足,不管是对

「解决 — vue调用百度ai人脸识别接口跨域报错」

之前调都没毛病的,这次咋就开始报跨域了捏问题:跨域解决:配置proxy代理1:修改vue.config.js文件2:修改baseURL3:修改前后对比注:ProxyTable会在打包后失效,可以使用反向代理工具,例如nginx,或者让后端解决

SpringBoot 优雅配置跨域多种方式及Spring Security跨域访问配置的坑

前言最近在做项目的时候,基于前后端分离的权限管理系统,后台使用SpringSecurity作为权限控制管理,然后在前端接口访问时候涉及到跨域,但我怎么配置跨域也没有生效,这里有一个坑,在使用SpringSecurity时候单独配置,SpringBoot跨越还不行,还需要配置Security跨域才行。什么是跨域跨域是一种浏览器同源安全策略,即浏

SpringBoot实现jsonp跨域通信

实现jsonp跨域通信实现基于jsonp的跨域通信方案原理浏览器对非同源ajax请求有限制,不允许发送跨域请求目前跨域解决方案有两种cros配置jsonp请求cros为新规范,通过一个head请求询问服务器是否允许跨域,若不允许则被拦截jso

SpringBoot实现jsonp跨域通信

实现jsonp跨域通信实现基于jsonp的跨域通信方案原理浏览器对非同源ajax请求有限制,不允许发送跨域请求目前跨域解决方案有两种cros配置jsonp请求cros为新规范,通过一个head请求询问服务器是否允许跨域,若不允许则被拦截jso

No 'Access - HelloWorld