加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Ajax 跨域会见的 JQuery 的办理方案

发布时间:2018-08-21 09:22:45 所属栏目:业界 来源:站长网
导读:我们知道ajax自己现实上是通过XMLHttpRequest工具来异步举办数据的交互,而赏识器出于安详思量,不应承js代码举办跨域操纵,以是js跨域操纵会被拒绝。 详细环境有: 一、本域和子域的彼此会见: http://www.aa.com/和book.aa.com 二、本域和其他域的彼此会见

我们知道ajax自己现实上是通过XMLHttpRequest工具来异步举办数据的交互,而赏识器出于安详思量,不应承js代码举办跨域操纵,以是js跨域操纵会被拒绝。

详细环境有:
一、本域和子域的彼此会见: http://www.aa.com/和book.aa.com
二、本域和其他域的彼此会见: http://www.aa.com/和http://www.bb.com/ 用 iframe
三、本域和其他域的彼此会见: http://www.aa.com/和http://www.bb.com/ 用 XMLHttpRequest会见署理
四、本域和其他域的彼此会见: http://www.aa.com/和http://www.bb.com/ 用 JS建设动态剧本

本日首要接头第4中办理方案,这个和上个的区别就是哀求是行使<script>标签来哀求的,这个要求也是两个域都是由你来开拓才行。道理就是JS文件注入,在本域内的a内天生一个JS标签,它的SRC指向哀求的其它一个域的某个页面b,b返回数据即可,可以直接返回JS的代码。由于script的src属性是可以跨域的。

这里我们必要用到JQuery.getScript(url, callback)要领,url是剧本文件的URL路劲,callback函数在剧本资源已被加载和求值后挪用的回调函数。

起首在bb.com建设一个js文件,test.js

1 var ojb = {msg:'js跨域哀求乐成'};

然后在aa.com的页面上行使$.getScript加载test.js剧本

1 $(function() {
2 $.getScript('http://www.bb.com/test.js', function() {
3 if (ojb) {
4 alert(obj.msg);
5 }
6 });
7 });

行使$.getScript函数的最大甜头就是可以担保,剧本加载完毕后挪用回调函数。

小我私人感受这种要领比行使署理和iframe要简朴一些。

出处:http://hyl8218.cnblogs.com

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读