1.什么是同源策略
Same origin Policy,浏览器出于安全方面的考虑,只允许与本域下的接口交互。不同源的客户端脚本在没有明确授权的情况下,不能读写对方的资源。
本域是
- 同协议
- 同域名
- 同端口
2.什么是跨域?跨域有几种实现形式
- 跨域:允许不同域的接口进行交互
- JSONP
- CORS
- 降域
- postMessage
3.JSONP 的原理是什么
- 定义数据处理函数
- 前端通过创建script标签接收来自后端的js代码
- 后端通过callback接口将数据包装成js代码的格式
- 前端将接收到数据作为参数,通过函数直接执行js代码把数据解析出来,从而完成跨域的数据请求
4.CORS是什么
CORS全称是跨域资源共享(Cross-Origin Resource Sharing),是一种ajax跨域请求资源的方式。
- 当使用XMLHttpRequest发送请求时,浏览器会给该请求请求加上Oringin
- 服务器收到请求,在应答中加上Access-Control-Allow-Origin
- 浏览器收到应答,判断Access-Control-Allow-Origin中是否有Origin的内容。如果包含,则可以拿到响应数据,反之则不行