同源策略和跨域

URL 说明 是否允许通信
www.a.com/a.js www.a.com/b.js 同一域名下 允许
www.a.com/lab/a.js www.a.com/script/b.js 同一域名下不同文件夹 允许
www.a.com:8000/a.js www.a.com/b.js 同一域名,不同端口 不允许
www.a.com/a.js www.a.com/b.js 同一域名,不同协议 不允许
www.a.com/a.js 70.32.92.74/b.js 域名和域名对应ip 不允许
www.a.com/a.js script.a.com/b.js 主域相同,子域不同 不允许
www.a.com/a.js a.com/b.js 同一域名,不同二级域名(同上) 不允许(cookie这种情况下也不允许访问)
www.cnblogs.com/a.js www.a.com/b.js 不同域名 不允许

特别注意两点:

  • 如果是协议和端口造成的跨域问题“前台”是无能为力的,
  • 在跨域问题上,域仅仅是通过“URL的首部”来识别而不会去尝试判断相同的ip地址对应着两个域或两个域是否在同一个ip上。

“URL的首部”指window.location.protocol +window.location.host,也可以理解为“Domains, protocols and ports must match”。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!