文章插图
一、什么是跨域?
在日常开发过程中,经常要处理一些跨域问题,那么在了解跨域之前,首先要知道什么是同源策略(same-origin policy) 。简单来讲同源策略就是浏览器为了保证用户信息的安全,防止恶意的网站窃取数据,禁止不同域之间的JS进行交互 。对于浏览器而言只要域名、协议、端口其中一个不同就会引发同源策略,从而限制他们之间如下的交互行为:
1.Cookie、LocalStorage和IndexDB无法读取;
2.DOM无法获得;
3.AJAX请求不能发送 。
跨域的严格一点的定义是:只要协议,域名,端口有任何一个的不同,就被当作是跨域 。
如下表所示:
文章插图
【JavaScript中的跨域问题及解决办法】特别注意两点:
第一,如果是协议和端口造成的跨域问题“前台”是无能为力的,
第二:在跨域问题上,域仅仅是通过“URL的首部”来识别而不会去尝试判断相同的ip地址对应着两个域或两个域是否在同一个ip上 。
“URL的首部”指window.location.protocol +window.location.host,也可以理解为“Domains, protocols and ports must match” 。
推荐阅读
- SQL中的通配符
- 品茶叶中的婚姻经营之道
- 深度解读茶中的苦与涩
- 普洱茶中的散茶和茶饼有何区别
- 红茶中的软黄金
- 钻石荷花烟嘴绿点是什么 钻石荷花烟嘴中的绿线是啥
- 茶中的小清新与硬汉子
- Tag标签使用在seo优化中的作用
- 一文看懂docker容器技术架构及其中的各个模块
- 夏季小米怎么存放