詳解前端HTTP協議入門教程
下面給介紹一下http協議的入門,實際上前端功能會在實際開發中經常的接觸瀏覽器網路相關的,一共四個部分。
1、原因
如圖,那麼為什麼要在前端進階裡面會給大家介紹http協議,因為絕大多少的web應用,都是構建在http協議之上的。
2、是什麼
簡單來說http協議是一種無狀態、B/S(瀏覽器和伺服器)模式應用層協議,多基於TCP協議。
3、包含什麼
現在我們來分析我想要介紹的http協議都包含什麼內容?
因為http協議它是一種瀏覽器、伺服器模式的應用程式,那麼它肯定包含請求也包含響應,這裡我要講的是請求裡面包含些什麼東西,和響應裡面還包含什麼東西,請求裡面報文的格式包括報頭、正文、URI,然後還有請求方法和請求頭等等,響應裡面包括響應的狀態碼、訊息報頭還有響應正文。
4、FAQ
還有一些大家在學習的過程中,經常會遇到的一些問題,比如說常見的請求頭有哪些?比如說“user-aget”“cookle”“Referrer”還有常見的響應頭“Content-Type”“Content-Length”“Cache”,還有控制資源快取的一些內容,還有常見的狀態碼也就是響應的狀態碼,狀態碼中的“2xx”表示請求是成功的或者是傳出內容,“3xx”表示跳轉,“4xx”表示客戶端請求錯誤,“5xx”表示伺服器端錯誤。
那麼為了給大家詳細介紹一個http請求和響應部分。
如圖,開啟谷歌瀏覽器的開發者工具,在右上角有三個橫槓的符號,點選這個符號,然後選擇更多工具“more tools”然後點開開發者工具就可以出現。
如圖,然後點到下面,然後在列表裡面看第一個,然後可以看到“Request headers”就是請求頭,可以看到它下面有幾個關鍵的,比如說“accept”就是你能夠接受什麼型別的編碼,還有你是否支援壓縮等等。
然後還有一個比較關鍵的是“cookie”,因為前面有提到http是一種無連線,無狀態的一種協議,就是在兩個請求之間,下一個請求是不知道上一個請求的狀態的,所以為了解決這個問題就引入了“cookie”。
還有就是“referer”就是跳轉到當前的這個頁面,我是從哪個頁面來的,這個在做網站統計的時候是非常有用的東西,因為這個referer在瀏覽器的安全策略裡面是不允許改的,就是別人是控制不了這個referer。
如圖,還有一個比較重要的叫做“user agent”,這個簡單的理解就是使用者代理,這個就是一個標示當前瀏覽器的東西。
如圖,剛才我所說的“Request Headers”它就是一個請求頭,那麼http具體的請求實際上第一行是這個內容,然後後面才是請求頭。
如圖,這才是真正的請求,如圖上加綠部分就代表我當前請求的是什麼東西,然後是用“GET”方法請求的,然後是我拿到的響應狀態碼是200。
如圖,可以看到響應狀態碼在這裡,首先是協議然後是狀態碼,然後是ok。“content-type”這是比較重要的響應頭,那麼content標示的是當前傳輸內容的型別,就是http協議限制就是一次連結只查出一種型別的內容,但是http2裡面打破了這種限制。
1、原因
如圖,那麼為什麼要在前端進階裡面會給大家介紹http協議,因為絕大多少的web應用,都是構建在http協議之上的。
2、是什麼
簡單來說http協議是一種無狀態、B/S(瀏覽器和伺服器)模式應用層協議,多基於TCP協議。
3、包含什麼
現在我們來分析我想要介紹的http協議都包含什麼內容?
因為http協議它是一種瀏覽器、伺服器模式的應用程式,那麼它肯定包含請求也包含響應,這裡我要講的是請求裡面包含些什麼東西,和響應裡面還包含什麼東西,請求裡面報文的格式包括報頭、正文、URI,然後還有請求方法和請求頭等等,響應裡面包括響應的狀態碼、訊息報頭還有響應正文。
4、FAQ
還有一些大家在學習的過程中,經常會遇到的一些問題,比如說常見的請求頭有哪些?比如說“user-aget”“cookle”“Referrer”還有常見的響應頭“Content-Type”“Content-Length”“Cache”,還有控制資源快取的一些內容,還有常見的狀態碼也就是響應的狀態碼,狀態碼中的“2xx”表示請求是成功的或者是傳出內容,“3xx”表示跳轉,“4xx”表示客戶端請求錯誤,“5xx”表示伺服器端錯誤。
那麼為了給大家詳細介紹一個http請求和響應部分。
如圖,開啟谷歌瀏覽器的開發者工具,在右上角有三個橫槓的符號,點選這個符號,然後選擇更多工具“more tools”然後點開開發者工具就可以出現。
如圖,然後點到下面,然後在列表裡面看第一個,然後可以看到“Request headers”就是請求頭,可以看到它下面有幾個關鍵的,比如說“accept”就是你能夠接受什麼型別的編碼,還有你是否支援壓縮等等。
然後還有一個比較關鍵的是“cookie”,因為前面有提到http是一種無連線,無狀態的一種協議,就是在兩個請求之間,下一個請求是不知道上一個請求的狀態的,所以為了解決這個問題就引入了“cookie”。
還有就是“referer”就是跳轉到當前的這個頁面,我是從哪個頁面來的,這個在做網站統計的時候是非常有用的東西,因為這個referer在瀏覽器的安全策略裡面是不允許改的,就是別人是控制不了這個referer。
如圖,還有一個比較重要的叫做“user agent”,這個簡單的理解就是使用者代理,這個就是一個標示當前瀏覽器的東西。
如圖,剛才我所說的“Request Headers”它就是一個請求頭,那麼http具體的請求實際上第一行是這個內容,然後後面才是請求頭。
如圖,這才是真正的請求,如圖上加綠部分就代表我當前請求的是什麼東西,然後是用“GET”方法請求的,然後是我拿到的響應狀態碼是200。
如圖,可以看到響應狀態碼在這裡,首先是協議然後是狀態碼,然後是ok。“content-type”這是比較重要的響應頭,那麼content標示的是當前傳輸內容的型別,就是http協議限制就是一次連結只查出一種型別的內容,但是http2裡面打破了這種限制。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25876358/viewspace-2155810/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Http協議入門HTTP協議
- HTTP協議詳解HTTP協議
- HTTP 3協議詳解HTTP協議
- 02 前端HTTP協議(圖解HTTP) 之 簡單的HTTP協議前端HTTP協議圖解
- Jmeter(二十七) - 從入門到精通 - Jmeter Http協議錄製指令碼(詳解教程)JMeterHTTP協議指令碼
- HTTP協議_入門知識HTTP協議
- http協議/cookie詳解/session詳解HTTP協議CookieSession
- 網路通訊協議-HTTP協議詳解!協議HTTP
- 05 前端HTTP協議(圖解HTTP) 之 HTTP首部前端HTTP協議圖解
- Jmeter(三十) - 從入門到精通 - Jmeter Http協議錄製指令碼工具-Badboy3(詳解教程)JMeterHTTP協議指令碼
- 詳解Tomcat核心配置、http協議TomcatHTTP協議
- Jmeter(三十三) - 從入門到精通 - Jmeter Http協議錄製指令碼工具-Badboy6(詳解教程)JMeterHTTP協議指令碼
- Jmeter(三十二) - 從入門到精通 - Jmeter Http協議錄製指令碼工具-Badboy5(詳解教程)JMeterHTTP協議指令碼
- 04 前端HTTP協議(圖解HTTP) 之 HTTP狀態碼前端HTTP協議圖解
- HTTP協議狀態碼詳解(HTTP Status Code)HTTP協議
- 01 前端HTTP協議(圖解HTTP) 之 網路基礎前端HTTP協議圖解
- HTTP2 協議長文詳解HTTP協議
- Http協議詳解之三次握手HTTP協議
- 基礎篇-http協議《http 簡介、url詳解、request》HTTP協議
- 網路篇 - http協議從入門到精通HTTP協議
- 瞭解HTTP協議HTTP協議
- HTTP 協議圖解HTTP協議圖解
- 03 前端HTTP協議(圖解HTTP) 之 HTTP報文內的HTTP資訊前端HTTP協議圖解
- 詳解HTTP&HTTPS協議及面試題HTTP協議面試題
- Asp.Net Core 中的HTTP協議詳解ASP.NETHTTP協議
- 瞭解HTTP/2協議HTTP協議
- 直播協議詳解 RTMP、HLS、HTTP-FLV、WebRTC、RTSP協議HTTPWeb
- 《圖解HTTP》——簡單的HTTP協議圖解HTTP協議
- 前端基礎之HTTP協議介紹前端HTTP協議
- 前端要知道的Http協議快取前端HTTP協議快取
- 前端面試題16----http協議前端面試題HTTP協議
- FTP協議詳解FTP協議
- raft協議詳解Raft協議
- TCP協議詳解TCP協議
- Kraft協議詳解Raft協議
- VxLAN協議詳解協議
- HTTPS協議詳解HTTP協議
- Gossip 協議詳解Go協議