1. 程式人生 > 其它 >簡述HTTP(參考B站 狂神說)

簡述HTTP(參考B站 狂神說)

技術標籤:http

HTTP

一、什麼是HTTP

HTTP (超文字傳輸協議)是一個簡單的請求-響應協議,它通常執行在TCP之上。

  • 文字:html,字串,~ ….
  • 超文字:圖片,音樂,視訊,定位,地圖…….
  • 一般是80埠

HTTPS: 安全的

  • 一般是443埠

二、兩個時代

http1.0

HTTP/1.0:客戶端可以與web伺服器連線後,只能獲得一個web資源,斷開連線

http2.0

    HTTP/1.1:客戶端可以與web伺服器連線後,可以獲得多個web資源。

三、HTTP請求

  • 客戶端-發請求(Request)——>伺服器

(百度):

Request URL:https://www.baidu.com/   請求地址
Request Method:GET    get方法/post方法
Status Code:200 OK    狀態碼:200
Remote(遠端) Address:14.215.177.39:443
Request URL:https://www.baidu.com/   請求地址
Request Method:GET    get方法/post方法
Status Code:200 OK    狀態碼:200
Remote(遠端) Address:14.215.177.39:443

1. 請求行

  • 請求行中的請求方式:GET
  • 請求方式:Get,Post, HEAD,DELETE,PUT,TRACT…
    • get:請求能夠攜帶的引數比較少,大小有限制,會在瀏覽器的URL位址列顯示資料內容,不安全,但高效
    • post:請求能夠攜帶的引數沒有限制,大小沒有限制,不會在瀏覽器的URL位址列顯示資料內容,安全,但不高效。

2.訊息頭

Request URL:https://www.baidu.com/   請求地址
Request Method:GET    get方法/post方法
Status Code:200 OK    狀態碼:200
Remote(遠端) Address:14.215.177.39:443

四、HTTP響應

  • 伺服器-迴響應(Response)——>客戶端

(百度):

Connection:Keep-Alive    連線
Content-Encoding:gzip    編碼
Content-Type:text/html   型別

響應體

Accept:告訴瀏覽器,它所支援的資料型別
Accept-Encoding:支援哪種編碼格式  GBK   UTF-8   GB2312  ISO8859-1
Accept-Language:告訴瀏覽器,它的語言環境
Cache-Control:快取控制
Connection:告訴瀏覽器,請求完成是斷開還是保持連線
HOST:主機..../.
Refresh:告訴客戶端,多久重新整理一次;
Location:讓網頁重新定位;

響應狀態碼
200:請求響應成功 200

3xx:請求重定向

  • 重定向:你重新到我給你新位置去;

4xx:找不到資源 404

  • 資源不存在;

5xx:伺服器程式碼錯誤 500 502:閘道器錯誤

常見面試題:

當你的瀏覽器中位址列輸入地址並回車的一瞬間到頁面能夠展示回來,經歷了什麼?