更新時間:2023年09月28日17時17分 來源:傳智教育 瀏覽次數(shù):
同源策略(英文全稱 Same origin policy)是瀏覽器提供的一個安全功能。MDN 官方給定的概念是同源策略限制了從同一個源加載的文檔或腳本如何與來自另一個源的資源進行交互。這是一個用于隔離潛在惡意文件的重要安全機制。
通俗的理解:瀏覽器規(guī)定,A 網(wǎng)站的 JavaScript,不允許和非同源的網(wǎng)站 C 之間,進行資源的交互,例如:
①無法讀取非同源網(wǎng)頁的 Cookie、LocalStorage 和 IndexedDB。
②無法接觸非同源網(wǎng)頁的 DOM。
③無法向非同源地址發(fā)送 Ajax 請求。
同源指的是兩個 URL 的協(xié)議、域名、端口一致,反之,則是跨域。出現(xiàn)跨域的根本原因:瀏覽器的同源策略不允許非同源的 URL 之間進行資源的交互。
例如網(wǎng)頁(http://www.test.com/index.html)和接口(http://www.api.com/userlist),非同源的URL,瀏覽器允許發(fā)起跨域請求,但是,跨域請求回來的數(shù)據(jù),會被瀏覽器攔截,無法被頁面獲取到。