HTTP協議概述
- 什么是HTTP協議?
- HTTP協議的作用是什么?

什么是HTTP協議?
HTTP協議是建立在客戶端和服務器之間的一個協議,在客戶端和服務器之間需要資料的傳輸,而傳輸資料的時候,我們要按照指定的規則或者叫協議去傳輸資料,
HTTP是建立在TCP/IP協議基礎之上的一個網路協議,
HTTP協議屬于網路七層結構中最上層(應用層)的協議,
HTTP協議是一個無狀態協議(不會記錄每次訪問時的資訊),
HTTP時一個客戶端和服務器端請求和應該的標準(TCP),客戶端時終端用戶,服務端時網站,
什么是WEB資源?
通過瀏覽器可以訪問到的所有資源都是web資源
WEB資源分為靜態資源和動態資源
? 靜態資源的資料是不變的,比如HTML、JPG、AVI,
? 動態資源是通過后臺程式展示頁面資料的,比如Servlet請求,
HTTP的作用是什么?
為了約束客戶端和服務器之間傳輸web資源時的格式,
HTTP協議版本

注:HTTP/1.0和HTTP/1.1版本之間最大的區別:可以一個連接傳輸多個web資源(推薦HTTP/1.1版本),
HTTP協議組成
由兩部分組成:請求協議資訊和相應協議資訊,
HTTP請求協議資訊由三部分組成:請求行、請求頭、請求體

請求行
它包含四部分(請求方法、URI、協議/版本、回車換行)
GET /user.html HTTP/1.1
請求方法:GET、POST等8種

URI:Uniform Resource Identifier,統一資源識別符號,它相當于一個網路資源的名稱,只是名稱的表現形式是/開頭的路徑形式,
URL:Uniform Resource Location,統一資源定位符
URL和URI的區別:URL是URI的子集,
協議/版本:表示這次請求是通過那個協議發送的,比如HTTP協議、HTTPS等,使用的HTTP協議一般都是1.1版本的,
請求頭
請求頭的資訊是以key:value形式展現的,
請求頭說明:


MIME概述

MEME格式:大型別/小型別,閱讀時反過來,比如text/html讀成html文本
常見MIME型別如下:

請求體
GET請求的請求體是空的,請求引數都是通過請求行傳給服務器端的,
POST請求的請求體可以承載資料,請求頭和請求體之間由一個空行作為分割線,
通過表單POST提交的請求體的表現形式主要由三種:


總結
請求協議由三部分組成:行頭體
請求首行:請求方法web資源URI http/1.1
請求頭:key value方式,不同的請求頭配置會告訴服務器端不同的輔助資訊,
請求體:承載傳輸的具體資料,不過請求體中的資料表現形式有三種,這三種都是通過form表單的enctype屬性來決定的,
- application/x-www-form-urlencoded:會對中文進行URL編碼,并且多個引數以&連接,上傳檔案只能上傳檔案名稱,
- text/plain:純文本方式,不會對中文進行URL編碼,不會使用&連接多個key-value引數,上傳檔案只能上傳檔案名稱,
- multipart/form-data:多部件表現形式,這種方式主要可以完成檔案上傳,可以將上傳的檔案名和檔案內容都傳遞給服務器端,
MIME:媒體型別,可以表示互聯網web資源的擴展名,
text/html ===> .html
text/plain ===> .txt
image/jpeg ===> .jpeg
image/gif ===> .gif
回應協議由那幾部分組成?
由三部分組成:狀態行、回應頭、回應體(相應正文),

狀態碼說明

回應頭
回應頭中的資訊也是key value方式展現的,


回應體,也叫回應正文,里面包含服務器發給客戶端的web資源資訊,回應正文資訊回傳到瀏覽器,瀏覽器需要根據回應頭中Content-type設定的MIME型別來打開回應正文資訊,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/100372.html
標籤:其他
上一篇:機器學習優化演算法
下一篇:Eclipse——關聯源代碼
