HTTP協議面試

2021-08-11 13:09:46 字數 1459 閱讀 9144

http1.0所做的優化

http1.0/http1.1的區別

1快取處理不同。 1.0只是用乙個標頭檔案的快取策略,1.1引入了更多

2頻寬優化及網路連線的使用(1.0存在浪費頻寬,不支援斷點續傳功能。1.1允許只請求資源的部分)

3host頭處理 (1.0中每台伺服器繫結唯一的ip位址。1.1請求訊息和響應訊息都支援host頭表改進)

4長連線(最大的區別)

http1.0/http1.1存在的問題

http1.x在傳輸資料時,每次都需要重新建立連線,無疑增加了大量的延遲時間(主要存在於1.0中,1.1可以解決)

http1.x在傳輸資料時,所有傳輸的內容都是明文,客戶端和服務端都無法驗證對方的身份(可以使用https)

http1.x在使用時,header裡攜帶的內容過大,在一定程度上增加了傳輸成本

雖然http1.x支援了keep-alive,來彌補多次建立連線產生的延遲,但是keep-alive使用多了同樣會給伺服器帶來大量的效能壓力(比如請求乙個檔案)

get/post方法的區別

提交的資料

提交的資料大小是否有限制

取得安全的值request.querestring vs request.form

安全問題

cookie和session的區別

什麼是cookie

cookie技術是客戶端的解決方案,cookie就是有伺服器給客戶端的特殊資訊,而這些資訊以文字檔案的方式存放在客戶端,然後客戶端每次向伺服器傳送請求的時候都會帶上這些特殊的資訊(在okhttp中設定cookie需要用到***來完成)

什麼是session

session是另一種記錄客戶狀態的機制,不同的是cookie儲存在客戶端瀏覽器中,而session儲存在伺服器上,客戶端瀏覽器訪問伺服器的時候,伺服器把客戶端資訊以某種形式記錄在伺服器上

session:工作原理

1.建立session

2.在建立session的同時,伺服器會為該session生成唯一的session id

3.在session被建立之後,就可以呼叫session相關的方法往session中新增內容

4. 當客戶端再次傳送請求的時候,會將這個session id帶上,伺服器接受到請求後就會依據session id找到相應的session

區別存放位置不同

存放方式不同 (session能儲存任何內容,cookie 字串)

安全性不同,session更安全

有效期不同 ,cookie比較長,session如果設定為-1關閉瀏覽器後就會失去

對伺服器壓力不同

並不是乙個單獨的協議,是對工作在一加密連線(ssl/tls)上常規http協議。通過在tcp和http之間加入tls(transport layer security)來加密。

ssl/tls協議

ssl協議

傳輸速度會變慢。更耗資源。

http協議 面試常見題

1.什麼是http協議?2.web客戶端是什麼?3.web服務端是什麼?4.什麼是資源?5.mime型別是什麼?6.什麼是uri?7.什麼是url?8.什麼是urn?9.常見的http方法有哪些?10.常見的狀態碼200,206,302,304,404,501的含義?11.什麼是報文?12.http...

HTTP協議面試題

1 說一下什麼是http協議?對器客戶端和 伺服器端之間資料傳輸的格式規範,格式簡稱為 超文字傳輸協議 2 什麼是http協議無狀態協議?怎麼解決http協議無狀態協議?曾經去某創業公司問到 3 說一下http協議中302狀態 阿里經常問 4 http協議有什麼組成?請求報文包含三部分 響應報文包含...

HTTP協議面試問答

http請求由三部分組成,分別是 請求行 訊息報頭 請求正文 http 超文字傳輸協議 是乙個基於請求與響應模式的 無狀態的 應用層的協議,常基於tcp的連線方式,http1.1版本中給出一種持續連線的機制,絕大多數的web開發,都是構建在http協議之上的web應用。1 常用的http方法有哪些?...