博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring-boot2.0 前后端分离项目 跨域问题
阅读量:5817 次
发布时间:2019-06-18

本文共 1202 字,大约阅读时间需要 4 分钟。

hot3.png

将Spring-boot 从1.5.x升级到2.0后,浏览器出现跨域问题:

Failed to load http://192.168.1.123:8080/mypath: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. Origin 'http://192.168.1.123:8080' is therefore not allowed access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.

原因:Spring-boot2.0后 allowCredentials为false

解决方式:

1.全局设置:

@Configuration@EnableWebMvcpublic class CorsConfig implements WebMvcConfigurer {     @Override    public void addCorsMappings(CorsRegistry registry) {        //设置允许跨域的路径        registry.addMapping("/**")                //设置允许跨域请求的域名                .allowedOrigins("*")                //这里:是否允许证书 不再默认开启                .allowCredentials(true)                //设置允许的方法                .allowedMethods("*")                //跨域允许时间                .maxAge(3600);    }

注意:corsconfig 实现方法也不一样,1.5.x WebMvcConfigurerAdapter 在2.0中改接口已被弃用,使用新的接口WebMvcConfigurer

2、局部使用注解@CrossOrigin 在Controller 或者方法上设置(全局的配置 在@CrossOrigin里依旧可用)

参考:https://github.com/spring-projects/spring-boot/issues/12488

转载于:https://my.oschina.net/u/574036/blog/1930600

你可能感兴趣的文章
利用ArcGIS Engine、VS .NET和Windows控件开发GIS应用
查看>>
重构——61字段下移(Push Down Field)
查看>>
[20170619]11G expand sql text.txt
查看>>
Yarn源码分析之如何确定作业运行方式Uber or Non-Uber?
查看>>
信号槽库:sigslot.h和sigc++使用
查看>>
微信公众号运营架构图
查看>>
map的erase()释放内存
查看>>
spring-boot | 整合Redis缓存数据
查看>>
国外研究员研发薄而柔韧的新柔性材料 拉伸和压缩可产生电流
查看>>
多进程问题
查看>>
【编程练习】复习一下树的遍历
查看>>
电视台成阿里云下一个大数据重塑目标
查看>>
5G:在期待中缓行
查看>>
RabbitMQ管理(1)——多租户与权限
查看>>
Android Studio2.2 使用CMake编译 C/C++
查看>>
vivo独家冠名天猫双十一狂欢夜,一个新的经典即将到来
查看>>
微软为啥让免费升Win10?
查看>>
SaaS与云计算的区别
查看>>
关于SQLServer的游标类型、锁定类型
查看>>
JAVA通信编程(三)——TCP通讯
查看>>