如何通过SpringBoot配置解决前后端分离的CORS跨域问题?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1914个文字,预计阅读时间需要8分钟。
1. 跨域问题为何存在?跨域不一定会出现跨域问题。因为跨域问题是浏览器对Ajax请求的一种安全限制:一个页面发出的Ajax请求,只能访问与当前页面同源的URL。这意味着一个页面发起的请求,只能是与当前页面同域名的资源,不能跨域访问。
1.为什么有跨域问题?
跨域不一定都会有跨域问题。
因为跨域问题是浏览器对于Ajax请求的一种安全限制:一个页面发起的Ajax请求,只能是与当前页域名相同的路径,这能有效的阻止跨站攻击。
因此:跨域问题 是针对 Ajax 的一种限制。
2.解决跨域问题的方案
目前比较常用的跨域解决方案有3种:
- Jsonp
最早的解决方案,利用script标签可以跨域的原理实现。
限制:
- 需要服务的支持
- 只能发起GET请求
- nginx反向代理
思路是:利用nginx把跨域反向代理为不跨域,支持各种请求方式
缺点:需要在nginx进行额外配置,语义不清晰 - CORS
规范化的跨域请求解决方案,安全可靠。
本文共计1914个文字,预计阅读时间需要8分钟。
1. 跨域问题为何存在?跨域不一定会出现跨域问题。因为跨域问题是浏览器对Ajax请求的一种安全限制:一个页面发出的Ajax请求,只能访问与当前页面同源的URL。这意味着一个页面发起的请求,只能是与当前页面同域名的资源,不能跨域访问。
1.为什么有跨域问题?
跨域不一定都会有跨域问题。
因为跨域问题是浏览器对于Ajax请求的一种安全限制:一个页面发起的Ajax请求,只能是与当前页域名相同的路径,这能有效的阻止跨站攻击。
因此:跨域问题 是针对 Ajax 的一种限制。
2.解决跨域问题的方案
目前比较常用的跨域解决方案有3种:
- Jsonp
最早的解决方案,利用script标签可以跨域的原理实现。
限制:
- 需要服务的支持
- 只能发起GET请求
- nginx反向代理
思路是:利用nginx把跨域反向代理为不跨域,支持各种请求方式
缺点:需要在nginx进行额外配置,语义不清晰 - CORS
规范化的跨域请求解决方案,安全可靠。

