一般的,只要网站的【协议名protocol】、【主机host】、【端口号port】这三个中的任意一个不同,网站间的数据请求与传输便构成了跨域调用
跨域:浏览同源策略的造成,是浏览器对JavaScript施加的安全限制
CORS是一种可以解决跨域问题的技术

SprinMVC通过@CrossOrigin注解解决跨域

在Spring MVC4.2之后推出了@CrossOrigin注解来解决跨域问题,而在4.2之前我们都是通过定义注册过滤器的方式来解决跨域问题的

@CrossOrigin的参数:
1、origins:允许可访问的域列表;*表示可以是任何来源
2、maxAge:准备响应前的缓存持续的最大时间(单位:秒)

@CrossOrigin使用在Controller层:
1、类上,此类中所有方法启用跨域支持

// 开启跨域支持
@CrossOrigin
@RestController
@RequestMapping("/user")
public class UserController {}

2、方法上,仅此方法启用跨域支持

// 开启跨域支持
@CrossOrigin
@RequestMapping(value = "/findAll", method = RequestMethod.GET)
public List<User> findAll(){return userService.findAll();
}

注意

1、注解失效问题:此时Controlle的方法上@RequestMapping注解中需要声明请求方式即增加method=RequestMethod.XXX

2、添加注解后session失效问题:此时对的ajax请求中需要添加xhrFields:{withCredentials:true}(每个ajax中都需要加此属性,以保证session一致)

$.ajax({type: "post",url: '/user/login',xhrFields: {withCredentials: true},data: {username: username,password: password},success: function (msg) {console.log('登录成功');},error: function (msg) {console.log('请求报错!');}
})

SpringMVC注解@CrossOrigin解决跨域问题相关推荐

  1. 注解@CrossOrigin解决跨域问题

    注解@CrossOrigin 出于安全原因,浏览器禁止Ajax调用驻留在当前原点之外的资源.例如,当你在一个标签中检查你的银行账户时,你可以在另一个选项卡上拥有EVILL网站.来自EVILL的脚本不能 ...

  2. SpringMVC使用@CrossOrigin解决跨域无效问题的解决方案

    今天开始做前后端分离,遇到的坑不少,首先就是跨域问题. springMVC4.X以上版本可以通过在接口方法加@CrossOrigin的方法来解决跨域问题,但是加上之后居然没反应!!!!! 于是就开始在 ...

  3. @CrossOrigin(origins = *,maxAge = 3600)解决跨域的问题的注解

    IT行业可加我微信互相进步:17625089935 注解@CrossOrigin解决跨域问题 其中 origins:是允许访问的列表(origins="网址") maxAge:准备 ...

  4. java 跨域_springboot解决跨域CROS问题,用注解@CrossOrigin

    项目是springboot框架,前后端分离,需要跨域,当前前端可以用JSONP解决,但是java端如何解决呢? 因为是springboot框架,所以好多都可以用注解解决问题,所以就用到了@CrossO ...

  5. springboot解决跨域CROS问题,用注解@CrossOrigin

    项目是springboot框架,前后端分离,需要跨域,当前前端可以用JSONP解决,但是java端如何解决呢? 因为是springboot框架,所以好多都可以用注解解决问题,所以就用到了@CrossO ...

  6. SpringMvc解决跨域问题

    SpringMvc解决跨域问题 参考文章: (1)SpringMvc解决跨域问题 (2)https://www.cnblogs.com/shihaiming/p/9544060.html 备忘一下.

  7. Spring @CrossOrigin 通配符 解决跨域问题

    @CrossOrigin 通配符 解决跨域问题 痛点: 对很多api接口需要 开放H5 Ajax跨域请求支持 由于环境多套域名不同,而CrossOrigin 原生只支持* 或者具体域名的跨域支持 所以 ...

  8. SpringBoot解决跨域的5种方式

    本文来说下SpringBoot中实现跨域的5种方式. 文章目录 什么是跨域 java解决CORS跨域请求的方式 返回新的CorsFilter(全局跨域) 重写WebMvcConfigurer(全局跨域 ...

  9. CORS解决跨域的几种实现方式

    目录 一.什么是跨域 二.同源策略 非同源限制 三.跨域的解决办法 CORS 3.1.两种请求 3.1.1.简单请求 3.1.2.非简单请求 3.2.CORS常用解决跨域的方法 3.2.1.HttpS ...

最新文章

  1. 如何快速get到AI工程师面试重点,这12道题必备!
  2. Convert Sorted Array to Binary Search Tree - LeetCode
  3. java实现套接字网络编程_Java网络编程(一)Socket套接字
  4. x1c 2017 安装mint18的坑——grub2
  5. 华为推出地图服务 助力开发者强化地图能力
  6. Linux基金会呼吁厂商放弃微软FAT文件系统
  7. 案例4-3 朋友圈 (25 分)(并查集)
  8. 使用Mesos和Marathon管理Docker集群
  9. 【JeecgBoot】关于 jeecg-boot 的项目理解、使用心得和改进建议
  10. 安卓后门工具:backdoor-apk 教程
  11. 《考研-数据结构-哈弗曼树-已知某段通信报文内容,对该报文进行哈弗曼编码,并计算平均码长》
  12. [数据安全]数据防泄密建设
  13. 20.古体诗的平仄与三字脚
  14. 电脑损坏,电脑文件损坏无法开机怎么办
  15. Word格式处理控件Aspose.Words for .NET水印处理教程——如何添加和删除水印
  16. 带你全方位了解考研初试!
  17. 软件开发搞定计算机组成原理:计算篇
  18. vba中如何使用函数counta
  19. httplib2的安装
  20. Rose Data Modeler与数据库的建模

热门文章

  1. 【坑】python、R里面条件判断是不一样的
  2. 基于STM32的MDK软件仿真输出PWM波形
  3. 初识 SDUI(Server-Driven UI,服务端驱动 UI)
  4. 360过双网测试版 GSMS双网软件ISO文件下载
  5. 关于GSMS的制作方法的记录
  6. gitLab旧仓库搬迁新仓库方法
  7. 贵州大学oj C++ 【第八章】虚函数-1
  8. 【DLY-310端子排型电流继电器】
  9. 操作简单的影音文件播放工具-万能播放器下载
  10. python3_selenium webdriver 和 requetes 爬去淘宝购买的某机构的在线教育视频 教程