摘要:同源策略是什么同源策略是瀏覽器的一個安全功能,不同源的數據禁止訪問。或許你可以說驗證,在瀏覽器沒有同源策略的情況下這些都可以繞過去。總結同源策略是蠻好的,防御了大部分的攻擊。
前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,現在前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術水平,打牢基礎知識的中心思想,我們開課啦(每周四)。
同源策略是什么?同源策略是瀏覽器的一個安全功能,不同源的數據禁止訪問。
所以 lilnong.top 下的 ajax 訪問 51vv.com 數據是會報錯。(network 可以看到 response,證明限制是瀏覽器方的限制)
當然,也有例外
表單提交、鏈接
這些項等同于切換頁面
script標簽的src、link標簽的href、img標簽的src、iframe標簽的src
上述的資源可以引用,但是不可獲取內容。
img 可以顯示出來,但是你無法放入canvas二次使用,會把canvas的源污染。
iframe 可以顯示,不可以獲取DOM
script 不可獲取報錯代碼位置。
同源的定義端口、域名、協議 都相同,定義為同源。
針對http://www.lilnong.top/static這個地址來說。端口(80),域名(www.lilnong.top),協議(http)
URL | 端口 | 域名 | 協議 | 描述 |
---|---|---|---|---|
https://www.lilnong.top | 80 | www.lilnong.top | https | 協議不同,不同源 |
http://lilnong.top | 80 | lilnong.top | http | 域名不同,不同源 |
http://lilnong.top:8080 | 8080 | lilnong.top | http | 域名不同,端口不同,不同源 |
http://www.lilnong.top:8080 | 8080 | www.lilnong.top | http | 端口不同,不同源 |
http://www.lilnong.top/ | 80 | www.lilnong.top | http | 同源 |
http://www.51vv.com | 80 | www.51vv.com | http | 域名不同,不同源 |
安全問題
例子1:普通的網絡用戶,不會去記域名等內容。如果我在我自己的頁面內,嵌套一個并把他放大,不就和淘寶一模一樣了?并且還會有淘寶的狀態信息。
這時候我們可以獲取用戶的密碼、給用戶創建訂單、注銷用戶的賬戶等等有危害性的操作。
例子2:領導說要一個騰訊新聞。嗯好,我們放大自適應。
這時候,我們可以加點小廣告,截獲一些用戶操作。分分鐘不花錢。得到了一個騰訊新聞。
數據歸屬問題
大家都知道爬蟲吧。想起來前幾天在思否看到的頭條(“飯友”APP 未經許可抓取微博數據,被判賠償210萬)。
如果說沒有同源策略,飯友直接 ajax 拉取微博數據。或許你可以說 referer 驗證,在瀏覽器沒有同源策略的情況下這些都可以繞過去。
微博方看到的就是一個正常的微博用戶,正常的ip,訪問了他們的接口。
那么爬蟲呢?爬蟲是主動觸發的操作,是他們使用他們的ip,偽造成一個合理的用戶,去抓取數據。
同源策略是蠻好的,防御了大部分的攻擊。但是合理是合理,一些特殊情況下我們也是要繞過這個策略,下節我們講跨域。
微信公眾號:前端linong 初級階段文章目錄前端培訓-初級階段(17) - 數據存儲(cookie、session、stroage)
前端培訓-初級階段(13) - 正則表達式
前端培訓-初級階段(13) - 類、模塊、繼承
前端培訓-初級階段(13) - ECMAScript (內置對象、函數)
前端培訓-初級階段(13) - ECMAScript (語法、變量、值、類型、運算符、語句)
前端培訓-初級階段(13、18)
前端培訓-初級階段(9 -12)
前端培訓-初級階段(5 - 8)
前端培訓-初級階段(1 - 4)
中級階段文章目錄前端培訓-中級階段(2) - 事件(event) 事件冒泡、捕獲 - (2019-06-20期)
前端培訓-中級階段(3) - DOM 文檔對象模型(2019-06-27期)
前端培訓-中級階段(4)- BOM 瀏覽器對象模型(2019-07-04期)
前端培訓-中級階段(5)- jQuery的概念與基本使用(2019-07-11期)
前端培訓-中級階段(6)- jQuery元素節點操作(2019-07-18期)
前端培訓-中級階段(7)- jQuery的事件綁定鏈式操作及原理(2019-07-25期)
前端培訓-中級階段(8)- jQuery元素屬性樣式操作(2019-08-01期)
前端培訓-中級階段(9)- 原生Ajax的運行原理與實現(2019-08-08期)
資料前端培訓目錄、前端培訓規劃、前端培訓計劃
瀏覽器同源策略及跨域的解決方法
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/105773.html
摘要:上節我們講了同源策略,這節我們講講如何跨域。當這些從的腳本執行出錯,因為違背了同源策略為了保證用戶信息不被泄露,錯誤信息不會顯示出來,取而代之只會返回一個。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,現在前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術水平,打牢基礎知識的中心思想,我們開課啦(每...
摘要:前端最基礎的就是。幫助從舊的事件方法轉換,和。方法移除用綁定的事件處理程序。特定的事件處理程序可以被移除元素上提供事件名稱,命名空間,處理函數。用于過濾器的觸發事件的選擇器元素的后代。事件觸發模擬觸發原生使用觸發。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,現在前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS)...
摘要:前端最基礎的就是。幫助從舊的事件方法轉換,和。方法移除用綁定的事件處理程序。特定的事件處理程序可以被移除元素上提供事件名稱,命名空間,處理函數。用于過濾器的觸發事件的選擇器元素的后代。事件觸發模擬觸發原生使用觸發。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,現在前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS)...
摘要:前端最基礎的就是。對應,是標簽的屬性。獲取匹配元素相對父元素的偏移。返回的對象包含兩個整型屬性和。一組包含作為動畫屬性和終值的樣式屬性和及其值的集合動畫的額外選項。指示是否在效果隊列中放置動畫。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,現在前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術水平,...
摘要:前端最基礎的就是。對應,是標簽的屬性。獲取匹配元素相對父元素的偏移。返回的對象包含兩個整型屬性和。一組包含作為動畫屬性和終值的樣式屬性和及其值的集合動畫的額外選項。指示是否在效果隊列中放置動畫。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術就算入門,但也僅僅是入門,現在前端開發的定義已經遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術水平,...
閱讀 963·2023-04-25 23:50
閱讀 1981·2021-11-19 09:40
閱讀 603·2019-08-30 13:50
閱讀 2734·2019-08-29 17:11
閱讀 1049·2019-08-29 16:37
閱讀 2992·2019-08-29 12:54
閱讀 2801·2019-08-28 18:17
閱讀 2643·2019-08-26 16:55