Http基礎知識總結

2021-09-22 10:20:04 字數 2711 閱讀 4807

第一章:http概述

web客戶端與伺服器是如何通訊的,

表示web內容的資源來自何方,

web事務是怎樣工作的,

http通訊所使用的報文格式,

底層tcp網路傳輸,

不同的http協議

形式

解釋http會將請求引數用key1=val1&key2=val2的方式進行組織,並放到請求實體裡面,不支援檔案,一般用於表單提交

multipart/form-data

json是一種輕量級的資料格式,以「鍵-值」對的方式組織的資料,需要引數本身就是json格式的資料,引數會被直接放到請求實體裡,不進行任何處理。服務端/客戶端會按json格式解析資料(約定好的情況下)

方法解釋get

從伺服器向客戶端傳送命名資源

put將來自客戶端的資料儲存到乙個命名的伺服器資源中

delete

從伺服器刪除命名資源

post

將客戶端資料傳送到乙個伺服器閘道器應用程式

head

僅傳送命名資源響應中的http首部

狀態碼ok.文件正確返回

200ok.文件正確返回

302redirect(重定向)。到其他地方區獲取資源

404notfound(沒找到)。無法找到這個資源 組成

解釋起始行

報文的第一行就是起始行

首部字段

每個首部欄位都包含乙個名字和乙個值,兩者之間用冒號:來分隔;首部以乙個空行結束

主體空行之後就是可選的報文主體,主體可以包含任意的二進位制資料

13、web的結構元件:

第二章:url與資源

url語法

各種url元件的含義及其所做的工作

url編碼及字元規則

各種網際網路資訊系統常見的url方案

2、url語法:9部分構成的通用格式上

3、編碼機制:通過一種「轉義」表示法來表示不安全的字元,這種轉義表示法包含乙個百分號(%),後面跟著兩個表示字元ascii碼的十六進製制數 字元

ascii碼

示例url

~126(0x7e)

空格32(0x20

%37(0x25)

字元解釋%

保留作為編碼字元的轉義標誌

/保留作為路徑元件中分隔路徑段的定界符

.保留在路徑元件中使用

#保留作為分段定界符使用

?保留作為查詢字串定界符使用

;保留作為引數定界符使用

:保留作為方案、使用者/命令,以及主機/埠元件的定界符使用

$,+保留

@&=在某些方案的上下文中有特殊的含義,保留

{}^~

<>"

不安全,這些字元在url範圍之外通常是有意義的,比如在文件中對url自身進行定界,所以應該對其進行編碼

0x00-0x1f,0x7f 受限

這些十六進製制範圍內的字元都在us-ascii字符集的不可列印區間內

第三章:http報文

報文是如何流動的,

http報文的三個組成部分(起始行、首部和實體的主體部分),

請求和響應報文之間的區別,

請求報文支援的各種功能(方法),

和響應報文一起返回的各種狀態碼,

各種各樣的http首部都是用來做什麼的

2、報文由三部分組成:對報文描述的起始行,包含屬性的首部塊,以及可選的包含資料的主體部分

3、報文的語法:所有的http報文都可以分為兩類:請求報文和響應報文

4、起始行:所有的http報文都以乙個起始行作為開始。請求報文的起始行說明了要做些什麼,響應報文的起始行說明發生了什麼

5、請求行:請求報文的起始行,或稱為請求行,包含了乙個方法和乙個請求url以及http版本

6、響應行:響應報文的起始行稱為響應行,響應報文承載了狀態資訊和操作產生的所有結果資料,將其返回給客戶端。包含了http版本、數字狀態碼、以及描述操作狀態的文字形式的原因短語;所有這些欄位都由空格符進行分隔

7、方法:

8、狀態碼:方法是用來告訴伺服器做什麼事情的,狀態碼則用來告訴客戶端,發生了什麼事情

9、常見的狀態碼:

10、原因短語:它為狀態碼提供了文字形式的解釋

11、 版本號:說明了應用程式支援的最高http版本

12、首部:向請求和報文中新增了一些附加資訊,本質上說,它們只是一些名/值對的列表,語法:名字後面跟著冒號(?,然後跟上可選的空格,再跟上字段值,最後乙個crlf

13、http首部可以分為以下幾類,通用首部:既可以出現在請求報文中,也可以出現在響應報文中

14、狀態碼:

15、100~199:資訊狀態碼,100 continue 說明收到了請求的初始部分,請客戶端繼續。傳送了這個狀態碼之後,伺服器再收到請求之後必須進行響應

16、200~299:成功狀態碼,200 ok 請求沒問題,實體的主體部分包含了所有請求的資源

17、300~399:重定向狀態碼,要麼告知客戶端使用替代位置來訪問它們所感興趣的資源,要麼就提供乙個替代的響應而不是資源的內容

18、400~499:客戶端錯誤狀態碼,有時候客戶端會傳送一些伺服器無法處理的東西,比如格式錯誤的請求報文,或者最常見的是404,表明伺服器對我們請求的資源一無所知

HTTP 基礎知識

具體去看原文 你應該知道的http基礎知識 1.http請求報文格式 http的請求報文分為三個部分請求行 請求頭和請求體。1.1 請求行 請求行 request line 分為三個部分 請求方法 請求位址和協議及版本,以crlf r n 結束。http 1.1定義的請求方法有8中 get post...

HTTP 基礎知識

標籤位於文件的頭部,不包含任何內容。標籤的屬性定義了與文件相關聯的名稱 值對。標籤永遠位於 head 元素內部。http equiv 屬性為名稱 值對提供了名稱。並指示伺服器在傳送實際的文件之前先在要傳送給瀏覽器的 mime 文件頭部包含名稱 值對。當伺服器向瀏覽器傳送文件時,會先傳送許多名稱 值對...

HTTP基礎知識

get 用於請求訪問已經被uri 統一資源識別符號 識別的資源,可以通過url傳參給伺服器 post 用於傳輸資訊給伺服器,主要功能與get方法類似,但一般推薦使用post方式。put 傳輸檔案,報文主體中包含檔案內容,儲存到對應uri位置。head 獲得報文首部,與get方法類似,只是不返回報文主...