跨域:
浏览器对于javascript的同源策略限制,对于不同资源请求出现跨域问题,协议,端口和主机都相同,则两个页面同源。不同资源如下图示,图1引用MDN
图1
下面我们来看看如何使用注解解决跨域问题:
关于controller 、页面,请请自行创建模拟。我们主要看注解部分。
全局cors:
@Configuration
public class CorsConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowCredentials(TRUE)
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
.maxAge(3600);
}
}
创建一个配置类 暂且叫 CorsConfig (Cross-Origin Resource Sharing 简写cors) 实现WebMvcConfigurer 重写addCorsMappings.
上面配置表示允许所有请求支持跨域访问,并且不限定域,支持GET、POST、PUT、DELETE、OPTIONS方法。
重启项目 不同端口请求访问success!