js設(shè)置document.domain實現(xiàn)跨域

document.domain用來得到當前網(wǎng)頁的域名。比如在地址欄里輸入:

javascript:alert(document.domain); //www.haha.com

我們也可以給document.domain屬性賦值,不過是有限制的,你只能賦成當前的域名或者基礎(chǔ)域名。比如:

javascript:alert(document.domain = "haha.com"); //haha.com 
javascript:alert(document.domain = "www.haha.com"); //www.haha.com

上面的賦值都是成功的,因為www.jb51.net是當前的域名,而jb51.net是基礎(chǔ)域名。
但是下面的賦值就會出來"參數(shù)無效"的錯誤:
復(fù)制代碼代碼如下:
javascript:alert(document.domain = "cctv.net"); //參數(shù)無效
javascript:alert(document.domain = "www.haha.net"); //參數(shù)無效

因為cctv.netwww.haha.net不是當前的域名也不是當前域名的基礎(chǔ)域名,所以會有錯誤出現(xiàn)。這是為了防止有人惡意修改document.domain來實現(xiàn)跨域偷取數(shù)據(jù)。
利用document.domain 實現(xiàn)跨域:
前提條件:這兩個域名必須屬于同一個基礎(chǔ)域名!而且所用的協(xié)議,端口都要一致,否則無法利用document.domain進行跨域
Javascript出于對安全性的考慮,而禁止兩個或者多個不同域的頁面進行互相操作。相同域的頁面在相互操作的時候不會有任何問題。
比如在:aaa.com的一個網(wǎng)頁(a.html)里面 利用iframe引入了一個bbb.com里的一個網(wǎng)頁(b.html)。這時在a.html里面可以看到b.html里的內(nèi)容,但是卻不能利用javascript來操作它。因為這兩個頁面屬于不同的域,在操作之前,js會檢測兩個頁面的域是否相等,如果相等,就允許其操作,如果不相等,就會拒絕操作。這里不可能把a.html與b.html利用JS改成同一個域的。因為它們的基礎(chǔ)域名不相等。(強制用JS將它們改成相等的域的話會報跟上面一樣的"參數(shù)無效錯誤。")
所以如果在a.html里引入aaa.com里的另一個網(wǎng)頁,是不會有這個問題的,因為域相等。
有另一種情況,兩個子域名:
aaa.xxx.com
bbb.xxx.com
aaa里的一個網(wǎng)頁(a.html)引入了bbb 里的一個網(wǎng)頁(b.html),這時a.html里同樣是不能操作b.html里面的內(nèi)容的。因為document.domain不一樣,一個是aaa.xxx.com,另一個是bbb.xxx.com。
這時我們就可以通過Javascript,將兩個頁面的domain改成一樣的,需要在a.html里與b.html里都加入:

document.domain = "xxx.com";
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 什么是跨域? 2.) 資源嵌入:、、、等dom標簽,還有樣式中background:url()、@font-fac...
    電影里的夢i閱讀 2,462評論 0 5
  • 來吧,少年,今天還能看文章學(xué)習(xí)的,一多半都是單身貴族,看朋友圈還會被虐,不如學(xué)習(xí),上街還會被虐,不如學(xué)習(xí),痛并快樂...
    范小飯_閱讀 8,158評論 3 24
  • 1. 什么是跨域? 跨域一詞從字面意思看,就是跨域名嘛,但實際上跨域的范圍絕對不止那么狹隘。具體概念如下:只要協(xié)議...
    他在發(fā)呆閱讀 858評論 0 0
  • 1. 什么是跨域? 跨域一詞從字面意思看,就是跨域名嘛,但實際上跨域的范圍絕對不止那么狹隘。具體概念如下:只要協(xié)議...
    w_zhuan閱讀 620評論 0 0
  • 有一個朋友,她從小就體育不及格,將體育補考這項偉大的事業(yè),從小學(xué)入學(xué),一直堅定地堅持到了畢業(yè)。然而,她卻從今年春節(jié)...
    作家格格閱讀 348評論 2 2

友情鏈接更多精彩內(nèi)容