一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JavaScript跨域總結(jié)與解決辦法

  本文來自網(wǎng)絡(luò)(http://f2e.me/200904/cross-scripting/,該網(wǎng)址已不能訪問),僅作個(gè)人讀書筆記之用,并稍作修改和補(bǔ)充。

  什么是跨域

  JavaScript出于安全方面的考慮,不允許跨域調(diào)用其他頁面的對(duì)象。但在安全限制的同時(shí)也給注入iframe或是ajax應(yīng)用上帶來了不少麻煩。這里把涉及到跨域的一些問題簡單地整理一下:

  首先什么是跨域,簡單地理解就是因?yàn)?a href=/itjie/Javajishu/ target=_blank class=infotextkey>JavaScript同源策略的限制,a.com 域名下的js無法操作b.com或是c.a.com域名下的對(duì)象。更詳細(xì)的說明可以看下表:

  特別注意兩點(diǎn):
第一,如果是協(xié)議和端口造成的跨域問題前臺(tái)是無能為力的,
第二:在跨域問題上,域僅僅是通過URL的首部來識(shí)別而不會(huì)去嘗試判斷相同的ip地址對(duì)應(yīng)著兩個(gè)域或兩個(gè)域是否在同一個(gè)ip上。
URL的首部指window.location.protocol +window.location.host,也可以理解為Domains, protocols and ports must match。

  接下來簡單地總結(jié)一下在前臺(tái)一般處理跨域的辦法,后臺(tái)proxy這種方案牽涉到后臺(tái)配置,這里就不闡述了,有興趣的可以看看yahoo的這篇文章:《JavaScript: Use a Web Proxy for Cross-Domain XMLHttpRequest Calls》

  1、document.domain+iframe的設(shè)置

  對(duì)于主域相同而子域不同的例子,可以通過設(shè)置document.domain的辦法來解決。具體的做法是可以在http://www.a.com/a.html和http://script.a.com/b.html兩個(gè)文件中分別加上document.domain = a.com;然后通過a.html文件中創(chuàng)建一個(gè)iframe,去控制iframe的contentDocument,這樣兩個(gè)js文件之間就可以交互了。當(dāng)然這種辦法只能解決主域相同而二級(jí)域名不同的情況,如果你異想天開的把script.a.com的domian設(shè)為alibaba.com那顯然是會(huì)報(bào)錯(cuò)地!代碼如下:

  www.a.com上的a.html

document.domain = 'a.com';
var ifr = document.createElement('iframe');
ifr.src
= 'http://script.a.com/b.html';
ifr.style.display
= 'none';
document.body.appendChild(ifr);
ifr.onload
= function(){
var doc = ifr.contentDocument || ifr.contentWindow.document;
// 在這里操縱b.html
alert(doc.getElementsByTagName("h1")[0].childNodes[0].nodeValue);
};

script.a.com上的b.html

document.domain
= 'a.com';

it知識(shí)庫JavaScript跨域總結(jié)與解決辦法,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲国产精品久久久久秋霞小 | 久久九九国产精品怡红院 | 精品福利国产 | 天天色天天射天天操 | 成人国产亚洲 | 国产成人亚洲综合欧美一部 | 亚洲毛片视频 | 真正国产乱子伦高清对白 | 激情欧美在线 | 亚洲aaaa级特黄毛片 | 91视频免费看 | 色呦呦网站在线观看 | 精品国产91 | 久久夜色精品国产飘飘 | 欧美日韩福利视频一区二区三区 | 91成品视频 | 人和拘一级毛片 | 亚洲 欧美 视频 | 在线播放亚洲美女视频网站 | 一区在线观看 | 亚洲毛毛片 | 成人一区专区在线观看 | 久青草国产手机视频免费观看 | 99久久国产综合精品国 | www.色噜噜| 亚洲国产乱码在线精品 | 午夜免费的国产片在线观看 | 国产91对白在线播放 | 中文字幕综合久久久久 | 5151四虎永久在线精品免费 | 五月深爱婷婷 | 中文字幕在线视频精品 | 五月天丁香婷婷开心激情五月 | 午夜dj观看在线影院 | 中文字幕久久网 | 欧美在线网址 | 色老板在线观看视频 | 都市激情综合网 | 亚洲天堂黄 | 精品一区二区三区四区 | 色婷婷影院在线视频免费播放 |