您好,登錄后才能下訂單哦!
一.什么是同源策略
同源策略,它是由Netscape提出的一個(gè)著名的安全策略,現(xiàn)在所有支持JavaScript 的瀏覽器都會(huì)使用這個(gè)策略,可以說同源策略是瀏覽器最核心也是最基本的安全功能。
所謂同源是指,域名,協(xié)議,端口相同。這一策略極為重要,試想如果沒有同源策略,可能a.com的一段javascript腳本,在b.com未曾指定加載該腳本時(shí),也可以在b.com的頁面中執(zhí)行該javascript腳本的話,那后果不堪設(shè)想。同源策略正是因?yàn)檫@個(gè)問題產(chǎn)生,使來自不同源的對(duì)象無法相互干擾。
對(duì)于javascript腳本來說,以下情況是同源與不同源。
對(duì)于URL:http://www.huhao.com/abc/123.html來說 結(jié)果 原因 http://www.huhao.com/bcd/456.html 同源 同主機(jī),域名,協(xié)議,端口
http://www.huhao.com:81/abc/124.html 不同源 不同端口
https://www.huhao.com/ bcd/123.html 不同源 不同協(xié)議
http://news.huhao.com/abc/123.html 不同源 不同主機(jī)名
通過上述例子是不是可以直觀的理解同源策略呢
二: 同源策略的用法
提前說一點(diǎn),對(duì)于當(dāng)前頁面來說,頁面內(nèi)存放javascript文件的域并不重要,重要的是加載javascript頁面所在的域是什么。
a.com通過以下代碼:
<script src=http://b.com/b.js></script>
來加載b.com上的b.js,但是b.js是運(yùn)行在a.com頁面中的,因此對(duì)于當(dāng)前頁面a.com來說,b.js的源就是a.com自己,而不是b.com!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。