跨域问题:
浏览器为了保证用户在访问网络资源时的安全,都是遵循”同源策略”
同源策略:是一个安全策略,:所有支持js的浏览器都会使用这个策略,所有同源,域名、协议、端口相同,目的保证安全考虑,防止js随意调用其他网站的资源。如果不满足同源的判定要求,被视为非同源访问,受到同源策略的限制,只要受到同源策略的显示,客户端发出请求,虽然可以达到服务器,但是客户端不能接收服务器的响应。如果我们在不同源的情况下,还想正常的请求和响应效果,就需要使用”跨域”技术
如果不解决则会报这样的错:
方式一:后端解决:
@Configuration public class WebConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**")//表示匹配所有路径 .allowedOrigins("*")//允许任何访问源 .allowedMethods("*")//允许任何请求方法 .allowedHeaders("*");//允许任何请求头消息 } }
方式二:
对应controller加@CrossOrigin这个注解