什么是跨域

  

    在JavaScript中,有一個(gè)很重要的安全性限制,被稱為“Same-Origin Policy”(同源策略)。這一策略對(duì)于JavaScript代碼能夠訪問(wèn)的頁(yè)面內(nèi)容做了很重要的限制,即JavaScript只能訪問(wèn)與包含它的文檔在同一域下的內(nèi)容。

  JavaScript這個(gè)安全策略在進(jìn)行多iframe或多窗口編程、以及Ajax編程時(shí)顯得尤為重要。根據(jù)這個(gè)策略,在baidu.com下的頁(yè)面中包含的JavaScript代碼,不能訪問(wèn)在google.com域名下的頁(yè)面內(nèi)容;甚至不同的子域名之間的頁(yè)面也不能通過(guò)JavaScript代碼互相訪問(wèn)。對(duì)于Ajax的影響在于,通過(guò)XMLHttpRequest實(shí)現(xiàn)的Ajax請(qǐng)求,不能向不同的域提交請(qǐng)求,例如,在abc.example.com下的頁(yè)面,不能向def.example.com提交Ajax請(qǐng)求,等等。

  為什么瀏覽器要實(shí)現(xiàn)同源限制?我們舉例說(shuō)明:

  比如一個(gè)黑客,他利用iframe把真正的銀行登錄頁(yè)面嵌到他的頁(yè)面上,當(dāng)你使用真實(shí)的用戶名和密碼登錄時(shí),如果沒(méi)有同源限制,他的頁(yè)面就可以通過(guò)javascript讀取到你的表單中輸入的內(nèi)容,這樣用戶名和密碼就輕松到手了.

  又比如你登錄了OSC,同時(shí)瀏覽了惡意網(wǎng)站,如果沒(méi)有同源限制,該惡意 網(wǎng)站就可以構(gòu)造AJAX請(qǐng)求頻繁在OSC發(fā)廣告帖.

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式