初識HTTP協議

2021-10-22 17:05:47 字數 2170 閱讀 5519

http,超文字傳輸協議(hypertext transfer protocol),是網路五層模型中的應用層的協議。作用是處理資源的請求響應過程。如圖,http就是定義了請求端和應答端之間通訊的格式:

如果說把tcp ip協議比作是快遞,通過ip和port將物品送至到正確的買家,那麼http這樣的應用層協議就好比是說明書,指導使用者如何使用這個物品。

請求和相應的報文格式類似,都是請求行 + 請求頭 + 空行 + 請求體

http請求

http響應

*/和請求不同的是 首行: [版本號] + [狀態碼] + [狀態碼解釋]

返回的body內容解析格式由請求頭中的content-type欄位決定。

1. http 的請求方法

常用的就是get和post,get和post的區別:

get的請求沒有請求體,資料只能放在url後面,post的資料可以放在url和請求體。url長度有一定的限制,所以get方法請求資料長度有限制,並且url只能傳輸ascii字元,所以如果有其他字元需要傳輸,需要序列化等操作。post的安全性更好,因為資料放在url中會暴露在外面,沒有放在請求體裡安全。get可請求以收藏為書籤,post請求不能。

get引數保留在瀏覽器歷史種,post不會。

2. http的狀態碼

常用的狀態碼:

3. http常見的header

content-length: body的長度

host: 客戶端告知伺服器, 所請求的資源是在哪個主機的哪個埠上;

user-agent: 宣告使用者的作業系統和瀏覽器版本資訊;

referer: 當前頁面是從哪個頁面跳轉過來的;

location: 搭配3xx狀態碼使用, 告訴客戶端接下來要去**訪問;

cookie: 用於在客戶端儲存少量資訊. 通常用於實現會話(session)的功能;

HTTP協議 初識HTTP

一 web網路基礎 客戶端 伺服器 首先作為傳送端的客戶端在應用層 http協議 發出乙個想看某個web頁面的http 請求。http報文傳送到傳輸層 tcp協議 為了傳輸方便,傳輸層把接收到的資料進行分割,並在各個報文上打上標記序號及埠號後 到網路層。網路層 ip協議 增加作為通訊目的位址的mac...

初識HTTP協議

url urlencode 對提交字串中的特殊字元進行轉義編碼,防止產生歧義 urldecode 對已編碼的url進行解碼 http協議格式 http協議格式分為四個部分 首行 頭部 空格 正文 首行 請求首行 由請求方法 url 協議版本三部分組成,由空格間隔,並且以 r n結尾 請求方法 pos...

初識HTTP協議(三)

由於在持久連線出現之前,客戶端每傳送一次請求得到響應後就要中斷一次tcp連線,這樣就導致了我們 無法並行傳送多個請求,因為只有在等待上乙個請求結束後才可以繼續傳送請求。持久連線使得多數請求以管線化的方式傳送成為可能,這意味著不用等待響應即可傳送下乙個請求。總的來講,持久連線只是減少了tcp不斷重複連...