對http的理解

2021-07-22 16:50:25 字數 647 閱讀 9965

一、http是什麼

http就是一套定義網路通訊的規則,根據這套規則,計算機之間就能完成通訊

二、http通訊的過程

1、dns解析,也就是把網域名稱轉換成ip

瀏覽器輸入網域名稱後,會先去brower快取查詢,如果沒找到或者找到了但是已經過期,就去作業系統快取查詢,沒找到或已過期,就去本機host資料夾下面查詢,還是沒找到或已過期就去網路運營商的dns伺服器查詢,dns伺服器會根據頂級網域名稱等資訊最終找到網域名稱註冊伺服器得到ip,並將ip返回給brower,這是乙個很複雜的過程

2、brower根據ip找到訪問的伺服器並建立連線

3、三次握手

三次握手四次揮手內容很複雜,但是作用其實直白一點可以解釋如下

b-s:伺服器,你能聽懂我說話嗎?

s-b:瀏覽器,我能聽懂你說話

b-s:既然能聽懂,那咱倆就聊聊吧

4、建立tcp/ip連線

5、傳送請求request

6、伺服器根據請求的路徑和引數找到對應html靜態頁面返回給brower,html中包含的js、css、等待靜態資源都需要brower通過http請求從伺服器獲取,當brower獲取了全部的內容後就開始解析和渲染,最終得到乙個完整的頁面

三、request、response

請求和相應都包括head和body

對TCP IP和HTTP的理解

ip協議對應於網路層,tcp協議對應於傳輸層,而http協議對應於應用層。tpc ip協議是傳輸層協議,主要解決資料如何在網路中傳輸,而http是應用層協議,主要解決如何包裝資料。實際上socket是對tcp ip協議的封裝,socket本身並不是協議,而是乙個呼叫介面 api 有個比較形象的描述 ...

對 HTTP 304 的理解

最近和同事一起看web的cache問題,又進一步理解了 http 中的 304 又有了一些了解。304 的標準解釋是 not modified 客戶端有緩衝的文件並發出了乙個條件性的請求 一般是提供if modified since頭表示客戶只想比指定日期更新的文件 伺服器告訴客戶,原來緩衝的文件還...

對 HTTP 304 的理解

最近和同事一起看web的cache問題,又進一步理解了 http 中的 304 又有了一些了解。304 的標準解釋是 not modified 客戶端有緩衝的文件並發出了乙個條件性的請求 一般是提供if modified since頭表示客戶只想比指定日期更新的文件 伺服器告訴客戶,原來緩衝的文件還...