您的位置:首页 > 其它

跨域

2016-04-08 11:12 211 查看

同源策略

所有的浏览器都遵守同源策略,即JavaScript或Cookie只能访问同域下的内容

怎么算跨域呢,先看下一个域名地址的组成:
http:// www . abc.com : 8080 / scripts/jquery.js

协议   子域名   主域名    端口号   请求资源地址

当协议、子域名、主域名、端口号任意一个不同时,都算作不同域

不同域之间互相请求资源,就算作“跨域”

用途:比如一个网站比较大,在郑州和上海分别设了两个服务器,用户操作页面就需要跨域了

JSONP

用于get请求传输少量数据,不支持post请求

$("#getJsonpByJquery").click(function () {
$.ajax({
type:"GET",
url: 'http://localhost:2701/home/somejsonp',
dataType: "jsonp",
jsonp: "callback",
success: function (data) {
console.log(data)
}
})
})


$jsonp = $_GET["callback"];
$jsonp."(json对象)";


W3C的CORS规范

CORS的原理:

CORS定义一种跨域访问的机制,可以让AJAX实现跨域访问。CORS 允许一个域上的网络应用向另一个域提交跨域 AJAX 请求。实现此功能非常简单,只需由服务器发送一个响应标头即可。

在服务端添加

header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Methods:POST,GET');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: