国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JQuery Ajax 跨域訪問的解決方案

2024-05-06 14:11:07
字體:
供稿:網(wǎng)友
具體情況有:
一、本域和子域的相互訪問: 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創(chuàng)建動態(tài)腳本
今天主要討論第4中解決方案,這個和上個的區(qū)別就是請求是使用<script>標簽來請求的,這個要求也是兩個域都是由你來開發(fā)才行。原理就是JS文件注入,在本域內(nèi)的a內(nèi)生成一個JS標簽,它的SRC指向請求的另外一個域的某個頁面b,b返回數(shù)據(jù)即可,可以直接返回JS的代碼。因為script的src屬性是可以跨域的。
這里我們需要用到JQuery.getScript(url, callback)方法,url是腳本文件的URL路勁,callback函數(shù)在腳本資源已被加載和求值后調(diào)用的回調(diào)函數(shù)。
首先在bb.com創(chuàng)建一個js文件,test.js
代碼如下:
var ojb = {msg:'js跨域請求成功'};

然后在aa.com的頁面上使用$.getScript加載test.js腳本
代碼如下:
$(function() {
$.getScript('http://www.bb.com/test.js', function() {
if (ojb) {
alert(obj.msg);
}
});
});

使用$.getScript函數(shù)的最大好處就是可以保證,腳本加載完畢后調(diào)用回調(diào)函數(shù)。
個人感覺這種方法比使用代理和iframe要簡單一些。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 中江县| 闸北区| 东源县| 东阳市| 莲花县| 宁陕县| 阿荣旗| 邯郸市| 宜都市| 枝江市| 新邵县| 米易县| 澄迈县| 巴塘县| 庆城县| 东莞市| 金坛市| 额济纳旗| 嘉义市| 曲靖市| 涟水县| 萨嘎县| 如东县| 紫金县| 临潭县| 正定县| 云安县| 墨脱县| 开江县| 岚皋县| 三原县| 双牌县| 信宜市| 黔江区| 开阳县| 新乐市| 苏尼特右旗| 临汾市| 西峡县| 江门市| 汝阳县|