jeesite跨域访问接口

来源:互联网 发布:linux查询系统版本 编辑:程序博客网 时间:2024/05/20 10:13

一、什么是跨域访问?
跨域是指你在A网站的浏览器页面去访问B网站的服务,比如你在www.A.com访问www.B.com提供的后台服务,或者你在www.A:80.com去访问www.A:81.com的后台服务,同一个域名下的不同端口访问也算跨域!

二、为什么无法跨域访问?
通常浏览器为了安全性考虑会在A域名下面拦截B域名的返回数据,导致不能跨域访问!

三、如果跨域访问?
关于如何跨域访问以及上面的两个问题,网上有很多资料,大胖老师就不给大家重复讲解了,在这里大胖老师主要给大家讲解下,如果让我们的jeesite接口支持跨域访问!
1、升级spring包,目前jeesite使用的4.0版本的spring,但是spring对于跨域访问的支持在4.2之后的版本支持的比较好,需要大家先升级spring的jar包至4.2以后的版本!
针对于manven版项目直接修改pom.xml的spring版本号,然后重新直接执行maven下载就可以了
针对于非maven项目,大家手动替换spring相关的jar包!大胖老师会在jeeadminlte的1.9及以后版本给大家升级跨域的支持
2、升级spring包后大家可能会遇到项目启动失败的问题,这个时候你需要替换spring关联的jackson包
以大胖老师升级到spring4.3为例子,最好将jackson包升级到2.8
3、大家可以简单的在controller层的方法上面增加注解@CrossOrigin,这个时候该接口就支持跨域访问了!
如果大家要限制只语序指定域名下的页面跨域访问也可以在注解行指定页面@CrossOrigin(origins=”www.xxx.com”)

另外spring提供的配置

进行跨域设置

针对于低版本的spring,大胖老师也查了一下资料,有些网友指出配置拦截器也可以支持跨域,但是大胖老师根据网友的配置并没有在jeesite实现跨域功能,大家也可以尝试一下,欢迎与大胖老师交流,QQ351985455

原创粉丝点击