同源策略

匿名 (未验证) 提交于 2019-12-02 21:53:52

一、同源策略

ͬԴ:协议、域名、端口相同。只要有一个不同就称之为跨域。出现跨域浏览器就要报错。

http://www.a.com/index.html ͬԴ
http://www.a.com:81/home.html 不同源,端口号不同
https://www.a.com/home.html 不同源,协议不同
http://www.b.com/home.html 不同源,域名不同

CORS方法

,CORS的请求成功与否取决于服务器是否同意当前域的请求,通过在服务器设置同意当前域的请求来实现跨域访问。在服务器的响应头部设置Access-Control-Allow-Origin:当前域或*

JSONP方法

此方法利用了script标签的src属性,scr属性具备跨域请求资源的能力。a.html请求b.js的数据,动态创建script标签,向服务器请求数据,请求地址后面的callback参数指定函数名。

function req(src){   let script = document.createElement("script");   script.src = src;   document.body.appendChild(script);   script.onload = function(){      document.body.removeChild(script);   }  } function getData(data){   console.log(data);     //从服务器拿到的数据data } box.onclick = function(){   req("http://www.a.com/b.js?callback = getData"); }

function getData({name:"张三"})   //返回的数据作为参数

文章来源: 同源策略
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!