天天看點

圖解HTTP筆記(一)

圖解HTTP筆記(一)

​​QQ群:722384575 ​​

圖解HTTP筆記(一)

前言

我去各大招聘網站看了一下,在面試過程中,HTTP 被提問的機率還是比較高的。我搜集了 5 大類 HTTP 面試常問的題目,同時這 5 大類題跟 HTTP 的發展和演變關聯性是比較大的,通過問答 + 圖解的形式由淺入深的方式幫助大家進一步的學習和了解 HTTP 。

1.HTTP 基本概念

2. Get 與 Post

3. HTTP 特性

4. HTTPS 與 HTTP

5. HTTP/1.1、HTTP/2、HTTP/3 演變

圖解HTTP筆記(一)

正文

HTTP 是什麼?描述一下      

HTTP 是超文本傳輸協定,也就是HyperText Transfer Protocol。

能否詳細解釋「超文本傳輸協定」?      

HTTP的名字「超文本協定傳輸」,它可以拆成三個部分:

1、超文本

2、傳輸

3、協定

圖解HTTP筆記(一)

1、「協定」

在生活中,我們也能随處可見「協定」,例如:

剛畢業時會簽一個「三方協定」;

找房子時會簽一個「租房協定」;

圖解HTTP筆記(一)

生活中的協定,本質上與計算機中的協定是相同的,協定的特點:

「協」字,代表的意思是必須有兩個以上的參與者。例如三方協定裡的參與者有三個:你、公司、學校三個;租房協定裡的參與者有兩個:你和房東。

「議」字,代表的意思是對參與者的一種行為約定和規範。例如三方協定裡規定試用期期限、毀約金等;租房協定裡規定租期期限、每月租金金額、違約如何處理等。

針對 HTTP 協定,我們可以這麼了解。

HTTP 是一個用在計算機世界裡的協定。它使用計算機能夠了解的語言确立了一種計算機之間交流通信的規範(兩個以上的參與者),以及相關的各種控制和錯誤處理方式(行為約定和規範)。

2. 「傳輸」

所謂的「傳輸」,很好了解,就是把一堆東西從 A 點搬到 B 點,或者從 B 點 搬到 A 點。别輕視了這個簡單的動作它至少包含兩項重要的資訊。

HTTP 協定是一個雙向協定。

我們在上網沖浪時,浏覽器是請求方 A ,百度網站就是應答方 B。雙方約定用 HTTP 協定來通信,于是浏覽器把請求資料發送給網站,網站再把一些資料傳回給浏覽器,最後由浏覽器渲染在螢幕,就可以看到圖檔、視訊了。

圖解HTTP筆記(一)

資料雖然是在 A 和 B 之間傳輸,但允許中間有中轉或接力。就好像第一排的同學想傳遞紙條給最後一排的同學,那麼傳遞的過程中就需要經過好多個同學(中間人),這樣的傳輸方式就從「A < — > B」,變成了「A <-> N <-> M <-> B」。

而在 HTTP 裡,需要中間人遵從 HTTP 協定,隻要不打擾基本的資料傳輸,就可以添加任意額外的東西。

針對傳輸,我們可以進一步了解了 HTTP。

HTTP 是一個在計算機世界裡專門用來在兩點之間傳輸資料的約定和規範。

3. 「超文本」

HTTP 傳輸的内容是「超文本」。

我們先來了解「文本」,在網際網路早期的時候隻是簡單的字元文字,但現在「文本」的涵義已經可以擴充為圖檔、視訊、壓縮包等,在 HTTP 眼裡這些都算作「文本」。

再來了解「超文本」,它就是超越了普通文本的文本,它是文字、圖檔、視訊等的混合體,最關鍵有超連結,能從一個超文本跳轉到另外一個超文本。

HTML 就是最常見的超文本了,它本身隻是純文字檔案,但内部用很多标簽定義了圖檔、視訊等的連結,再經過浏覽器的解釋,呈現給我們的就是一個文字、有畫面的網頁了。

OK,經過了對 HTTP 裡這三個名詞的詳細解釋,就可以給出比「超文本傳輸協定」這七個字更準确更

有技術含量的答案:

HTTP 是一個在計算機世界裡專門在「兩點」之間「傳輸」文字、圖檔、音頻、視訊等「超文本」資料的「約定和規範」。

那「HTTP 是用于從網際網路伺服器傳輸超文本到本地浏覽器的協定 ,這種說法正确嗎?      

繼續閱讀