跨域请求
跨域请求:通过一个域的JavaScript脚本和另外一个域的内容进行交互
域的信息:协议、域名、端口号
同域:当两个域的协议、域名、端口号均相同
同域(源)策略:
在浏览器中存在一种安全策略就是同源策略,同源策略是一种约定,它是浏览器最核心也是最基本的安全功能
如果缺少了同源策略,则浏览器的正常功能都会受影响,可以说web是构建在同源策略基础之上的。浏览器只是针对同源策略的一种实现
同源策略会阻止一个域的JavaScript脚本和另外一个域的内容进行交互。
CROS解决跨域
在前后端交互发送请求时会产生跨域问题,必须要解决这个问题。
在后端服务建立好相应的配置类,如图所示:
* 配置组件
* Author: zmq
* Date: 2024/2/20
*/
@Component
public class WebMvcConfiguration implements WebMvcConfigurer {
//解决跨域问题
@Override
public void addCorsMappings(CorsRegistry registry){
registry.addMapping("/**") //添加路径规则
.allowCredentials(true) //是否允许在跨域的情况下传递cookie
.allowedOriginPatterns("*") //允许请求来源的域规则
.allowedMethods("*")
.allowedHeaders("*"); //允许所有请求头
}
}
注意:
为了让配置生效,必须在启动类中加上组件扫描
```java
@SpringBootApplication
@ComponentScan(basePackages = "com.zmq.spzx")
@EnableConfigurationProperties(value = {UserAuthProperties.class, MinioProperties.class})
public class ManagerApplication {
public static void main(String[] args) {
SpringApplication.run(ManagerApplication.class, args);
}
}