跨域的一些方法

2017-10-28  本文已影响0人  _达斯基

什么是同源策略

同源策略是一种约定,它是浏览器最核心的安全功能,如果缺少了同源策略,那么浏览器正常的功能可能会收到影响,还会影响安全性,可以说web是构建在同源策略的基础上的,浏览器只是针对同源策略的一种实现。它是一种安全策略
现在所有支持JavaScript的浏览器都会使用这个策略
所谓的同源指的是,同域名,协议,端口,当一个浏览器的两个tab页中分别打开来自百度和谷歌的页面,当浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,就是看是否同源,只有百度的同源脚本才会被执行,如果非同源,那么在请求数据时,浏览器会在控制台中报错。

什么是跨域,跨域有几种实现方式

跨域允许不同源的借口实行交互

jsonp的原理是什么

json(json with padding)填充式json ,jsonp主要由回调函数和数据(传入回调函数的json数据)组成应为浏览器允许垮与资源嵌入,所以jsonp是通过在页面动态的添加<script>,为标签内部添加一个跨域的URL其中包括在之前声明好的一个回调函数(?XXX=回调函数名)当jsonp响应加载完以后,则会立即执行

cors是什么

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

实现4种跨域

https://github.com/dd328199005/JSONP-cors

上一篇 下一篇

猜你喜欢

热点阅读