JSONP_跨域

作者: 阿鲁提尔 | 来源:发表于2017-09-21 20:35 被阅读0次

    题目1: 什么是同源策略

    同源策略(Same origin Policy)
    浏览器出于安全方面的考虑,只允许与本域下的接口交互。不同源的客户端脚本在没有明确授权的情况下,不能读写对方的资源。

    题目2: 什么是跨域?跨域有几种实现形式

    本域指的是?
    • 同协议:如都是http或者https
    • 同域名:如都是http://www.baidu.com/ahttp://www.baidu.com/b
    • 同端口:如都是80端口
    什么是跨域?

    js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。

    跨域有几种实现形式?
    • JSONP
    • CORS
    • 降域
    • postmessage

    题目3: JSONP 的原理是什么

    由于同源策略,一般来说位于server1.example.com的网页无法与不是 server1.example.com的服务器沟通,而HTML<script>元素是一个例外。利用 <script>元素的这个开放策略,网页可以得到从其他来源动态产生的JSON数据而这种使用模式就是所谓的 JSONP。用JSONP抓到的数据并不是JSON,而是任意的JavaScript,用 JavaScript解释器运行而不是用JSON解析器解析。

    题目4: CORS是什么

    CORS 全称是跨域资源共享(Cross-Origin Resource Sharing),是一种ajax 跨域请求资源的方式支持现代浏览器,IE支持10以上。 实现方式很简单,当你使用 XMLHttpRequest 发送请求时,浏览器发现该请求不符合同源策略,会给该请求加一个请求头:Origin,后台进行一系列处理,如果确定接受请求则在返回结果中加入一个响应头:Access-Control-Allow-Origin; 浏览器判断该相应头中是否包含 Origin 的值如果有则浏览器会处理响应,我们就可以拿到响应数据,如果不包含浏览器直接驳回,这时我们无法拿到响应数据。所以 CORS 的表象是让你觉得它与同源的 ajax 请求没啥区别,代码完全一样。

    题目5: 根据视频里的讲解演示三种以上跨域的解决方式 ,写成博客

    http://www.jianshu.com/p/ff295081c128

    参考文章

    相关文章

      网友评论

        本文标题:JSONP_跨域

        本文链接:https://www.haomeiwen.com/subject/uygjsxtx.html