跨域

1.什么是同源策略?

浏览器处于安全方面的考虑,只允许与本域下的接口交互。不同源的客户端脚本在没有明确授权的情况下,不能读写对方的资源。
本域指的是:
(1) 同协议:如都是http或https
(2) 同域名: 如http://jirengu.com/ahttp://jirengu.com/b
(3) 同端口:如都是80端口
简单来说就是同协议、同域名、同端口就是同源
需要注意的是:对于当前页面来说页面存放的js文件的域不重要,重要的是加载该js页面所在什么域

2.什么是跨域?有几种实现方式?

跨域是指允许不同域的接口进行交互。
实现方式有:JSONP、CORS 、降域 、postMessage

3.JSONP原理是什么?

JDONP通过script标签加载数据的方式去获取数据当做js代码来执行,提前在页面上声明一个函数,函数名通过接口传参的方式传给后台,后台解析到函数名之后在原始数据上包裹这个函数名,发送给前端。换句话说,JSONP需要对应接口的后端的配合才能实现。

4.CORS是什么?

CORS全称是跨域资源共享(Cross-Origin Resource Sharing),是一种ajax跨域请求资源的方式,支持现代浏览器,IE10以上。实现方法,当使用XMLHttpRequest发送请求时,浏览器发现该请求不符合同源策略,会给该请求加一个请求头:Origin,后台进行一系列处理,如果确定接受请求则在返回结果中加一个响应头:Access-Control-Allow-Origin,浏览器判断该响应头是否包含Origin的值,如果有浏览器则会处理响应,如果不包含,浏览器直接驳回,这时我们就无法拿到响应。

5.跨域4种实现方式
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、浏览器的同源策略 1.什么是同源? 所谓“同源”指的是”三个相同“。相同的域名、端口和协议,这三个相同的话就视...
    徐国军_plus阅读 863评论 1 3
  • 什么是同源策略 同源政策(same-origin policy)是指同域名(或ip),同端口,同协议视为同一个域,...
    小囧兔阅读 540评论 0 1
  • 前言:对于跨域请求,很早之前就有去了解过,但因为一直关注的都是服务器后端开发,故也就仅仅停留在概念的理解上而没有机...
    ken_ljq阅读 89,855评论 6 128
  • 这几年,我总是处在一种“30岁魔咒”里。一方面稀里糊涂算不清楚自己是否到达30岁,一方面冥冥之中觉得这个数字特别重...
    文叨叨666阅读 54,711评论 1,068 1,767
  • Lady Gaga,这个让全世界侧目的超级巨星,一直以来,她因为夸张另类的服饰造型和异于常人的行径而被许多人打上怪...
    Karen梁阅读 431评论 1 0