题目1: 什么是同源策略
浏览器出于安全方面的考虑,只允许与本域下的接口交互。不同源的客户端脚本在没有明确授权的情况下,不能读写对方的资源。
- 本域指的是?
同协议:如都是http,https,file,ssh,mailto,tel
同域名:如都是http://jirengu.com/a
和http://jirengu.com/b
同端口:如都是80端口 - 不同源的例子:
http://jirengu.com/main.js
和https://jirengu.com/a.php
(协议不同)
http://jirengu.com/main.js
和http://bbs.jirengu.com/a.php
(域名不同,域名必须完全相同才可以)
http://jiengu.com/main.js
和http://jirengu.com:8080/a.php
(端口不同,第一个是80)
http://jiengu.com/main.js
和http://jiengu.com.cn/main.js
题目2: 什么是跨域?跨域有几种实现形式
- 跨域:突破同源策略的限制,允许不同域的接口进行交互
- 实现形式:
- JSONP
- CORS
- 降域
- postMessage
题目3: JSONP 的原理是什么
利用标签的可跨域性,基本思想是:
- 网页通过添加一个