App下載
話題 首頁 > JavaScript 教程 > JavaScript 教程話題列表 > 詳情

求JS跨域請求的解決方案?

精華
廈門小懶懶 2016-10-20 10:43:57 瀏覽(5529) 回復(fù)(5) 贊(0)
如題,求分享JS跨域請求的解決方案
javascript

回答(5)

小赤佬 2016-10-20

方案有很多,推薦兩個:

一、JSONP 服務(wù)器返回 callback({"id": "3", "name": "leisure"}); 復(fù)制代碼 代碼如下:



function callback(data) {
alert(data);
}



二、window.name

1、 服務(wù)器返回 復(fù)制代碼代碼如下:

window.name='{"id":"3", "name":"leisure"}';

2、定義一個iframe,添加onload事件









var load = false;


function iLoad() {


if(load == false) {


// 同域處理,請求后會再次重新加載iframe


document.getElementById('iframe1').contentWindow.location = '/';


load = true;


} else {


// 獲取window.name的內(nèi)容,注意必須進(jìn)行同域處理后方可訪問!


var data = document.getElementById('iframe1').contentWindow.name;


alert(data); // {"id":"3", "name":"leisure"}


load = false;


}


}



3、定義一個form,設(shè)置form的target為iframe的id,然后提交form 復(fù)制代碼代碼如下:



<button type="submit" value="submit" />

一筆荒蕪 2018-05-31

有問題找度娘,大佬太少,問題不好解決!!!!!

1144100656 2018-05-31

有同樣等問題咋解決,只能慢慢等大神啦.留名留名。。

1152696398 2018-05-31

留名留名!!!,同樣的問題,看看咋結(jié)局!!!

要回復(fù),請先登錄 或者注冊