现在做的项目,是前后端分离的,使用的是springboot,mybatis框架,在项目的springsecurity配置中我看到了这样的一段代码
查询后我知道这段代码是配置跨域请求的
那么什么是跨域请求呢?
跨域请求,就是说浏览器在执行脚本文件的ajax请求时,脚本文件所在的服务地址和请求的服务地址不一样。说白了就是ip、网络协议、端口都一样的时候,就是同一个域,否则就是跨域。这是由于Netscape提出一个著名的安全策略——同源策略造成的,这是浏览器对JavaScript施加的安全限制。是防止外网的脚本恶意攻击服务器的一种措施。
corsConfiguration.addAllowedOrigin("*"); // 设置访问源地址 。如果不这么写,就要配置地址,例如http://www.aimaonline.cn/,可以写多条
corsConfiguration.addAllowedHeader("*"); // 设置访问源请求头
corsConfiguration.addAllowedMethod("*"); // 设置访问源请求方法
source.registerCorsConfiguration("/**", buildConfig()); // 对接口配置跨域设置
“*”代表全部,“**”代表适配所有接口
ps.在上面贴的那段代码的类头上,要添加@Configuration注解
查询到除了这样配置跨域,还有其他方法,比如接口上使用@CrossOrgin注解