300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 跨域问题的产生及解决方法

跨域问题的产生及解决方法

时间:2021-05-04 13:20:56

相关推荐

跨域问题的产生及解决方法

域(Domain)是Windows网络中独立运行的单位,域之间相互访问则需要建立信任关系(即Trust Relation)。信任关系是连接在域与域之间的桥梁。当一个域与其他域建立了信任关系后,2个域之间不但可以按需要相互进行管理,还可以跨网分配文件和打印机等设备资源,使不同的域之间实现网络资源的共享与管理。 有一种简明的说法来解释广域跨域:跨域访问,简单来说就是 A 网站的 javascript 代码试图访问 B 网站,包括提交内容和获取内容。由于安全原因,跨域访问是被各大浏览器所默认禁止的。

解决方案:

1、js向服务器发送请求,然后让服务器去另一个域上获取数据后返回。(用于你无法控制另一个域)比如php中利用cUrl。

2、放置跨域文件.

3、用JSONP。虽然不能跨域进行通信,但是可以引入跨域的js文件。

先定义一个函数

varreturnData;functiongetData(obj){returnData=JSON.parse(obj);}

当我们要向/s.php请求数据的时候,我们可以引入某个包含返回信息的js文件。

比如:<script type="text/javascript" src="/s.php?id=12321"/>

js的内容是getData({json:'格式'});返回时输出 格式是 text/javascript (比如php用header('Content-type:text/javascript');来输出)

那么文件加载好后解析js时就会执行这个函数,返回得到的数据就被赋值给了returnData变量

以这样的方式插入到页面中:

varscript=document.createElement('script');script.src='/s.php?id=12321';//传入参数id=12321body.appendChild(script);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。