关于跨域你需要知道的

250 阅读1分钟

这几个参考链接讲得比较好,感觉没比较自己再做整理,仅做一个知识索引。看完就能明白同源和跨域是怎么回事。

同源策略(same-origin policy)

最初,它的含义是指,A网页设置的 Cookie,B网页不能打开,除非这两个网页同源。

三个相同
  • 协议相同
  • 域名相同
  • 端口相同
三种行为限制
  • Cookie,LocalStorage 和 IndexDB 无法读取
  • DOM 无法获得
  • AJAX 请求不能发送
参考

www.ruanyifeng.com/blog/2016/0…

CORS 跨域资源共享

CORS 是一个 W3C 标准,全称是"跨域资源共享"(Cross-origin resource sharing)。

它允许浏览器向跨源服务器,发出 XMLHttpRequest 请求,从而克服了 AJAX 只能同源使用的限制。

参考

www.ruanyifeng.com/blog/2016/0…

JSONP

jsonp 不是一种数据格式,跟 json 是两回事,而是一种跨域传输数据的技巧。

利用 script 标签的 src 可以跨域的性质,来加载跨域服务器的文件,该文件执行本地的函数,并且带有服务器传入的参数。

参考

segmentfault.com/a/119000000…