实现跨域访问
同源策略
收到三种行为限制:
- Cookie、LocalStorage和IndexDB无法读取
- DOM无法获取
- AJAX请求不能发送
同源:三个相同(协议、域名、端口号)
域名是什么
又称网域
- 访问的URL网址:网络协议 + 域名(IP地址) + 端口号 + 资源路径
- 同源:网络协议相同、域名以及端口号相同
- 不同源:
- 域名不相同:完全跨域
- 域名相同,端口号不同:跨子域
互联网默认原则:同源策略(不允许跨域访问)
跨域是什么
当一个资源从与该资源本身所在的服务器不同的域或端口请求一个资源时,资源会发起一个跨域HTTP请求
API遵循同源策略
- 完全跨域:就是指一个顶级域名方向另一个顶级域名
- 跨子域:相同顶级域名下的两个子级域名相互通信
常见跨域
- 元素
JSONP是什么
全称JSON with Padding,JSON的一种“使用模式”可用于解决主流浏览器的跨域数据访问的问题
利用
网页通过添加一个
$.getJSON()方法
通过使用JSONP形式的回调函数来加载其它网域的JSON数据