SpringMvc支持跨域访问,Spring跨域访问,SpringMvc @CrossOrigin 跨域
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
©Copyright 蕃薯耀 2017年7月12日
http://fanshuyao.iteye.com/
一、SpringMvc跨域支持
从Spring MVC 4.2 开始增加支持跨域访问
二、使用方法
1、某个方法支持跨域访问
在方法上增加@CrossOrigin注解,如下:
@RequestMapping("/crossDomain2") @ResponseBody @CrossOrigin public String crossDomain2(HttpServletRequest req, HttpServletResponse res, String name){ …… …… }
其中@CrossOrigin中的2个参数:
origins : 允许可访问的域列表
List of allowed origins, e.g. "http://domain1.com". These values are placed in the Access-Control-Allow-Origin header of both the pre-flight response and the actual response. "*" means that all origins are allowed. If undefined, all origins are allowed.
maxAge:飞行前响应的缓存持续时间的最大年龄(以秒为单位)。
The maximum age (in seconds) of the cache duration for pre-flight responses. This property controls the value of the Access-Control-Max-Age header in the pre-flight response. Setting this to a reasonable value can reduce the number of pre-flight request/response interactions required by the browser. A negative value means undefined. If undefined, max age is set to 1800 seconds (i.e., 30 minutes).
2、整个Controller都支持跨域访问,在类上面加上注解@CrossOrigin,如下:
@Controller @CrossOrigin public class TestController { …… …… }
3、自定义规则支持全局跨域访问,在spring-mvc.xml文件中配置映射路径,如下:
<mvc:cors> <mvc:mapping path="/cross/*"/> </mvc:cors>
如果整个项目所有方法都可以访问,则可以这样配置
<mvc:cors> <mvc:mapping path="/**"/> </mvc:cors>
其中* 表示匹配到下一层
** 表示后面不管有多少层,都能匹配。
如:
<mvc:cors> <mvc:mapping path="/cross/*"/> </mvc:cors>
这个可以匹配到的路径有:
/cross/aaa
/cross/bbbb
不能匹配的:
/corss/aaa/bbb
因为* 只能匹配到下一层路径,如果想后面不管多少层都可以匹配,配置如下:
<mvc:cors> <mvc:mapping path="/cross/**"/> </mvc:cors>就是一颗星(*) 变成两颗星(**)
上面表示有/cross/路径的请求都支持跨域访问,也可以增加其它的,如下:
<mvc:cors> <mvc:mapping path="/cross/**" allowed-origins="" max-age="2500"/> <mvc:mapping path="/domain/**"/> </mvc:cors>
请求路径有/cross/,方法示例如下:
@RequestMapping("/cross/crossDomain") @ResponseBody public String crossDomain(HttpServletRequest req, HttpServletResponse res, String name){ …… …… }
官方文档见:http://spring.io/blog/2015/06/08/cors-support-in-spring-framework
或者见附件的图片附件:CORS support in Spring Framework.png
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
©Copyright 蕃薯耀 2017年7月12日
http://fanshuyao.iteye.com/
相关推荐
NULL 博文链接:https://nethub2.iteye.com/blog/2333782
springmvc跨域处理,和过滤器方式跨域处理的主要代码,整体系统基于springboot框架搭建
本篇文章主要介绍了详解SpringMVC解决跨域的两种方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了Springmvc ajax跨域请求处理方法实例详解,需要的朋友可以参考下
这个资源是我为了学习spring-security而做的,后期我会在更新,适合新手吧。
利用springMvc 实现的简单的单点登录Demo,内含三个小Mavn项目分别是 1、认证中心SSOServer 2、子系统1SSOClient1 3、子系统2SSOClient2 文章请参考 http://blog.csdn.net/qq_31183297/article/details/79419222
1.spring MVC + spring +mybatis,是标准的MVC设计模式,将整个系统划分为显示层,Controller层,Service层,DAO层四层使用Spring MVC负责请求的转发和视图管理spring实现业务对象管理,mybatis作为数据对象的持久...
Spring Boot 使用 Redis 进行配置 Session 共享(Ajax 跨域) 源码下载。
下面小编就为大家分享一篇利用SpringMVC过滤器解决vue跨域请求的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
rest 风格架构,拥有token用户验证,cors跨域处理,完善的异常处理,直接导入eclipse,启动命令:tomcat7:run rom采用hibernate
最近做一个微信小项目遇到一个跨域问题,就是我的前端和后端是放在不同的服务器上的,然后使用opst请求的时候报错,所以通过查找相关的资料终于解决了,下面这篇文章主要给大家介绍了关于Spring MVC中自带的跨域问题...
主要介绍了详解spring mvc 请求转发和重定向,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
项目采用Spring、SpringMVC技术、具体实现的功能为基于Cookie技术的Session跨域功能
跨域问题是我们大家在开发中会经常遇到的一个问题,所以下面这篇文章主要给大家介绍了关于Spring MVC中处理ajax请求的跨域问题与注意事项的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面...
本人在前辈《从MVC到前后端分离(REST-个人也认为是目前比较流行和比较好的方式)》一文的基础上,实现了一个基于Spring的符合REST风格的完整Demo,具有MVC分层结构并实现前后端分离,该项目体现了一个具有REST风格...
spring mvc 实现存文本和多附件同时上传
本篇文章主要介绍了详解Spring MVC CORS 跨域 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
在带你快速学会 SpringMVC API 接口的编写的同时,我还想告诉你还有全局返回、全局异常、拦截器、跨域处理等等功能。 在带你快速学会 MQ 消息的发送与消费的同时,我还想告诉你 MQ 还有集群消费、广播消费、顺序消息...
可还记得springmvc,mybatis错综复杂的配置,有了spingboot,这些东西都不需要了,spingboot好处不 再赘诉,springcloud就基于SpringBoot把市场上优秀的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了...
本文介绍了 CORS 的知识以及如何在 Spring MVC 中配置 CORS,具有一定的参考价值,感兴趣的小伙伴们可以参考一下