前言: 跨域解决是一个合格java开发工程师必须要掌握的知识,狐狸将自己的理解都写下来,此文章仅代表鄙人的总结和理解,如有错漏,欢迎指正...
什么是跨域?
跨域是由于浏览器端的同源策略限制所得来 协议、端口、域名都相同的页面,则两个页面具有相同的源,只要其中一个不同,就会产生跨域问题
JSONP跨域:
缺点:
只能使用Get请求 不能注册 success、error 等事件监听函数,不能很容易的确定 JSONP 请求是否失败
JSONP 是从其他域中加载代码执行,容易受到跨站请求伪造的攻击,其安全性无法确保 要前端配合
CORS跨域:
缺点:也不是特别安全
优点:简单跨域请求和非简单跨域请求都能实现
@Configuration
public class CorsConfiguration {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurerAdapter() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET", "POST", "DELETE", "PUT", "OPTIONS")
.allowCredentials(true)
.maxAge(3600);
}
};
}
}
结语:以往都是看别人的博客进行学习技术,其中不乏有精华博客也有吊儿郎当的CV大法文章,所以决定将自己所学所用所整理的知识分享给大家,主要还是想为了后浪们少走些弯路,多些正能量的博客,如有错漏,欢迎指正,仅希望大家能在我的博客中学到知识,解决到问题,那么就足够了。谢谢大家!(转载请注明原文出处)