如果說http是網際網路的信使,那麼http報文就是它用來搬東西的包裹了。
本章內容
1、報文是如何流動的
2、http報文的三個組成部分(起始行、首部和實體的主體部分)
3、請求和響應報文之間的區別
4、請求報文支援的各種功能
5、響應報文返回的狀態碼
6、各種各樣的http首部都是做什麼用的
http報文是簡單的格式化資料塊
報文組成部分
起始行(對報文的描述)
首部(屬性塊)
資料主體(可選部分)
起始行和首部都是由行分隔的ascii文字(每行都是以乙個由兩個字元組成的行終止序列為結束,其中包含乙個回車符和乙個換行符,
可以寫作crlf),報文主體是可選的,主體可以是文字或二進位制資料也可以為空。
http報文可以分為請求報文和響應報文
請求報文
響應報文
get 從伺服器獲取資源
delete 從伺服器上刪除資源
post 向伺服器傳送需要的資料
put 將請求的主體部分儲存到伺服器上
head 只從伺服器獲取資源的首部
trace 對可能經過**伺服器傳送到伺服器上去的報文進行追蹤
options 決定可以在伺服器上執行哪些方法
安全方法
http定義了一組被稱作安全方法的方法。get方法和head方法被認為是安全方法,這就意味著使用get和head方法對伺服器資源沒有任何影響。
實際上所有方法中只有post方法不是安全冪等方法。
get和put方法是對應的,put用於向伺服器儲存資源。
其實不用將post方法和put方法區分的太清楚。
post用於向伺服器傳送資料,put用於向伺服器上的資源(例如檔案)中儲存資料。
100~199 資訊提示
200~299 成功
300~399 重定向
400~499 客戶端錯誤
500~599 伺服器錯誤
常見的錯誤碼
400 客戶端傳送了乙個錯誤的請求
403 forbidden,請求被伺服器拒絕
404 not found,請求位址不存在
405 method not allowed,請求的方法不被支援
500 internal server error
502 bad gateway
504 gateway timeout
首部我自己喜歡稱作為請求頭/響應頭
首部分類
通用首部:既可以出現在請求報文也可以出現在響應報文中
請求首部:提供更多有關請求的資訊
響應報文:提供更多有關響應的資訊
實體首部:描述主體的長度和內容,或者資源自身資訊
擴充套件首部:自定義規範之外的首部
實體的主體部分:實體的主體是http報文的負荷,這部分才是http真正要傳輸的內容。
清楚http報文的組成部分和報文分類,以及請求方法和常用首部設定,以及主體部分的傳輸。
第三章 HTTP報文
第三章 http報文 1 報文流 http報文是在http應用程式之間傳送的資料庫 所有報文都向下游流動 2 報文的組成部分 三部分 起始行 對報文進行描述 首部塊 包含屬性 和主體 可選的 包含資料 起始行和首部是由行分隔的ascii文字,每行由乙個兩個字元組成的行終止符列作為結束 crlf 主體...
第三章 HTTP報文內的HTTP資訊
用於 http 協議互動的資訊被稱為 http 報文。請求端 客戶端 的http 報文叫做請求報文,響應端 伺服器端 的叫做響應報文。http 報文大致可分為報文首部和報文主體 並不一定有 兩塊,由空行來劃分 報文主體和實體主體的差異 報文是 http 通訊中的基本單位,通過 http 通訊傳輸 實...
第三章 HTTP報文內的HTTP資訊
用於http協議互動的資訊被稱為http報文。請求端 客戶端 的http報文叫做請求報文。響應端 伺服器端 的http報文叫做響應報文。http報文本身是由多行 用cr lf作換行符 資料構成的字串文字 報文大致可分為報文首部和報文主體兩塊。兩者由最初出現的空行 cr lf 來劃分。報文 messa...