面試 網路 HTTP

2021-09-11 22:01:45 字數 1844 閱讀 7434

現在面試門檻越來越高,很多開發者對於網路知識這塊了解的不是很多,遇到這些面試題會手足無措。本篇文章知識主要集中在 http 這塊。文中知識來自 《** http》與維基百科,若有錯誤請大家指出。文章會持續更新。

面試 -- 網路 tcp/ip

對端傳輸

傳送端在層與層間傳輸資料時,沒經過一層都會被加上首部資訊,接收端每經過一層都會刪除一條首部

多種協議作用

ip 協議,tcp 協議和 dns 服務在使用 http 協議過程中發揮的作用

請求報文和響應報文

客戶端像伺服器發起請求時會生成一段請求報文,請求報文是由請求方法,url,協議版本,可選的請求首部欄位和內容實體構成。

請求報文

接收到請求的伺服器,會將請求內容的處理結構以響應的形式返回。響應報文基本上由協議版本,狀態碼,用以解釋狀態的原因短語,可選的響應首部字段以及實體主體構成。

響應報文

http 是不儲存狀態的協議和 cookie 的簡單介紹

http 協議對於傳送的請求和響應不做持久化處理。這時候引入了 cookie 技術用於狀態管理。cookie 對用與登入的狀態管理,沒有 cookie 這個技術的話,因為 http 不儲存狀態,每次開啟新網頁都必須再次登入。

cookie 會根據響應報文中的 set-cookie 欄位來通知客戶端自動儲存 cookie。下次請求時會自動傳送 cookie,伺服器會比對資料得到狀態結果。

cookie

post 和 get 的區別

先引入***和冪等的概念。

***指對伺服器上的資源做改變,搜尋是無***的,註冊是***的。

冪等指傳送 m 和 n 次請求(兩者不相同且都大於1),伺服器上資源的狀態一致。註冊10個和11個帳號是不冪等的,對文章進行更改10次和11次是冪等的。

在規範的應用場景上說,get 多用於無***,冪等的場景,例如搜尋關鍵字。post 多用於***,不冪等的場景,例如註冊。

在技術上說:

常見狀態碼

2xx 成功

3xx 重定向

4xx 客戶端錯誤

5xx 伺服器錯誤通用首部

指請求報文和響應報文都可以使用的字段

connection 指控制不再**給**的首部字段(hop-by-hop),管理持久連線

upgrade 可以用來指定乙個完全不同的通訊協議,對於這個字段,伺服器可以返回101狀態碼

請求首部欄位https 是 http 建立在 ssl/tls 安全協議上的。

在 ios 中,客戶端本地會存放著 ca 證書,在https 請求時,會首先像伺服器索要公鑰,獲得公鑰後會使用本地 ca 證書驗證公鑰的正確性,然後通過正確的公鑰加密資訊傳送給伺服器,伺服器會使用私鑰解密資訊。

ssl/tls握手階段分為五步:

以下引自 阮一峰的網路日誌

第一步,愛麗絲給出協議版本號、乙個客戶端生成的隨機數(client random),以及客戶端支援的加密方法。

第二步,鮑勃確認雙方使用的加密方法,並給出數字證書、以及乙個伺服器生成的隨機數(server random)。

第三步,愛麗絲確認數字證書有效,然後生成乙個新的隨機數(premaster secret),並使用數字證書中的公鑰,加密這個隨機數,發給鮑勃。

第四步,鮑勃使用自己的私鑰,獲取愛麗絲發來的隨機數(即premaster secret)。

第五步,愛麗絲和鮑勃根據約定的加密方法,使用前面的三個隨機數,生成"對話金鑰"(session key),用來加密接下來的整個對話過程。

https 相對於 http 效能上差點,因為多了 ssl/tls 的幾次握手和加密解密的運算處理,但是加密解密的運算處理已經可以通過特有的硬體來加速處理。

面試 網路 HTTP

現在面試門檻越來越高,很多開發者對於網路知識這塊了解的不是很多,遇到這些面試題會手足無措。本篇文章知識主要集中在 http 這塊。文中知識來自 http 與維基百科,若有錯誤請大家指出。文章會持續更新。面試 網路 tcp ip 對端傳輸 傳送端在層與層間傳輸資料時,沒經過一層都會被加上首部資訊,接收...

HTTP協議面試

http1.0所做的優化 http1.0 http1.1的區別 1快取處理不同。1.0只是用乙個標頭檔案的快取策略,1.1引入了更多 2頻寬優化及網路連線的使用 1.0存在浪費頻寬,不支援斷點續傳功能。1.1允許只請求資源的部分 3host頭處理 1.0中每台伺服器繫結唯一的ip位址。1.1請求訊息...

HTTP網路基礎

1.arp協議 arp協議就是根據ip位址就可以反查出對應的mac位址。mac位址就是網絡卡所屬的固定位址。2.http協議 職責 生成對目標web伺服器的http請求報文 對web伺服器請求的內容的處理 http請求報文是請求方法 請求資源uri 協議版本 可選的請求手部欄位和內容實體構成的。ht...