日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

前端_网页编程 HTTP协议(进阶)

發布時間:2024/9/27 HTML 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 前端_网页编程 HTTP协议(进阶) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 內容
  • 1. HTTP協議簡介
    • 1.1 什么是通信
      • 1.1.1 現實生活中的通信
      • 1.1.2 互聯網中的通信
    • 1.2 什么是通信協議
      • 1.2.1 現實生活中的通信協議
      • 1.2.2 互聯網中的通信協議
    • 1.3 HTTP
      • 1.3.1 什么是HTTP協議
      • 1.3.2 HTTP協議的交互模式
  • 2. HTTP請求消息
    • 2.1 什么是HTTP請求消息
    • 2.2 HTTP請求消息的組成部分
      • 2.2.1 請求行
      • 2.2.2 請求頭部
      • 2.2.3 空行
      • 2.3.4 請求體
      • 2.3.5 小結
  • 3. HTTP響應消息
    • 3.1 什么是HTTP響應消息
    • 3.2 HTTP響應消息的組成部分
      • 3.2.1 狀態行
      • 3.2.2 響應頭部
      • 3.2.3 空行
      • 3.2.4 響應體
      • 3.2.5 小結
  • 4. HTTP請求方法
    • 4.1 什么是HTTP請求方法
    • 4.2 HTTP的請求方法
  • 5. HTTP響應狀態碼
    • 5.1 什么是HTTP響應狀態碼
    • 5.2 HTTP響應狀態碼的組成及分類
    • 5.3 常見HTTP響應狀態碼
      • 5.3.1 成功響應狀態碼 2**
      • 5.3.2 重定向相關的響應狀態碼 3**
      • 5.3.3 客戶端錯誤相關的響應狀態碼 4**
      • 5.3.4 服務端錯誤相關的響應狀態碼 5**
  • 【完】


內容

  • HTTP協議簡介;
  • HTTP請求;
  • HTTP響應;
  • HTTP請求方法;
  • HTTP響應狀態代碼。


  • 1. HTTP協議簡介

    1.1 什么是通信

    通信,就是 信息的傳遞和交換

    通信三要素:

    • 通信的主體
    • 通信的內容
    • 通信的方式

    1.1.1 現實生活中的通信

    案例: 張三要把自己考上清華大學的好消息寫信告訴自己的好朋友李四

    其中:

    • 通信的 主體張三李四
    • 通信的 內容考上清華大學
    • 通信的 方式寫信

    1.1.2 互聯網中的通信

    案例: 服務器清華大學的簡介通過響應的方式發送給客戶端瀏覽器

    其中:

    • 通信的 主體服務器客戶端瀏覽器
    • 通信的 內容 清華大學簡介
    • 通信的 方式響應

    1.2 什么是通信協議

    通信協議(Communication Protocol)是指通信的雙方完成通信所必須遵守規則和約定
    通俗的理解:通信雙方采用約定好的格式來發送和接收消息,這種事先約定好的通信格式,就叫做通信協議

    1.2.1 現實生活中的通信協議

    張三與李四采用寫信的方式進行通信,在填寫信封時,寫信的雙方需要遵守固定的規則。信封的填寫規則就是一種通信協議。


    1.2.2 互聯網中的通信協議

    客戶端與服務器之間要實現網頁內容的傳輸,則通信的雙方必須遵守網頁內容的傳輸協議

    網頁內容又叫做超文本,因此網頁內容的傳輸協議又叫做超文本傳輸協議(HyperText Transfer Protocol) ,簡稱 HTTP 協議

    1.3 HTTP

    1.3.1 什么是HTTP協議

    HTTP 協議 即超文本傳送協議 (HyperText Transfer Protocol) ,它規定了客戶端與服務器之間進行網頁內容傳輸時,所必須遵守的傳輸格式。

    例如:

    • 客戶端 要以HTTP協議要求的格式把數據 提交 服務器
    • 服務器 要以HTTP協議要求的格式把內容 響應 客戶端

    1.3.2 HTTP協議的交互模式

    HTTP 協議采用了 請求/響應 的交互模型。


    2. HTTP請求消息

    2.1 什么是HTTP請求消息

    由于 HTTP 協議屬于客戶端瀏覽器和服務器之間的通信協議。因此,客戶端發起的請求 叫做 HTTP 請求客戶端發送到服務器的消息,叫做 HTTP 請求消息

    注: HTTP 請求消息 又叫做 HTTP 請求報文

    2.2 HTTP請求消息的組成部分

    HTTP 請求消息由4 個部分組成,分別是:

    • 請求行(request line);
    • 請求頭部( header );
    • 空行;
    • 請求體

    2.2.1 請求行

    請求行請求方式URL HTTP 協議版本 3 個部分組成,他們之間使用空格隔開。

    2.2.2 請求頭部

    請求頭部 用來描述客戶端的基本信息,從而把客戶端相關的信息告知服務器。比如:User-Agent 用來說明當前是什么類型的瀏覽器;Content-Type 用來描述發送到服務器的數據格式;Accept 用來描述客戶端能夠接收什么類型的返回內容;Accept-Language 用來描述客戶端期望接收哪種人類語言的文本內容。

    請求頭部由多行 鍵/值對 組成,每行的鍵和值之間用英文的冒號 分隔。

    請求頭部常見的請求字段:

    頭部字段說明
    Host要請求的服務器域名
    Connection客戶端與服務器的連接方式(close 或 keepalive)
    Content-Length用來描述請求體的大小
    Accept客戶端可識別的響應內容類型列表
    User-Agent產生請求的瀏覽器類型
    Content-Type客戶端告訴服務器實際發送的數據類型
    Accept-Encoding客戶端可接收的內容壓縮編碼形式
    Accept-Language用戶期望獲得的自然語言的優先順序


    更多請求頭字段的描述,請參閱 MDN 官方文檔:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers

    2.2.3 空行

    最后一個請求頭字段的后面是一個 空行,通知服務器請求頭部至此結束
    請求消息中的空行,用來分隔請求頭部請求體

    2.3.4 請求體

    請求體中存放的,是要通過 POST方式 提交到服務器的數據。

    注: 只有 POST 請求才有請求體,GET 請求沒有請求體!

    2.3.5 小結



    3. HTTP響應消息

    3.1 什么是HTTP響應消息

    響應消息 就是 服務器響應給客戶端的消息內容,也叫作響應報文。

    3.2 HTTP響應消息的組成部分

    HTTP響應消息由狀態行響應頭部空行響應體 4 個部分組成,如下圖所示:

    3.2.1 狀態行

    狀態行HTTP 協議版本狀態碼狀態碼的描述文本 3 個部分組成,它們之間用空格隔開;

    3.2.2 響應頭部

    響應頭部用來描述服務器的基本信息。響應頭部由多行 鍵/值對 組成,每行的鍵和值之間用英文的冒號分隔。

    常見的響應字段:

    更多響應頭字段的描述,請參閱 MDN 官方文檔:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers

    3.2.3 空行

    在最后一個響應頭部字段結束之后,會緊跟一個 空行,用來通知客戶端響應頭部至此結束
    響應消息中的空行,用來分隔 響應頭部響應體

    3.2.4 響應體

    響應體中存放的,是服務器響應給客戶端的資源內容。


    3.2.5 小結



    4. HTTP請求方法

    4.1 什么是HTTP請求方法

    HTTP 請求方法,屬于 HTTP 協議中的一部分,請求方法的作用是:用來表明要對服務器上的資源執行的操作。最常用的請求方法是 GETPOST

    4.2 HTTP的請求方法

    序號方法描述
    1GET 查詢 )發送請求來獲得服務器上的資源,請求體中不會包含請求數據,請求數據放在協議頭中。
    2POST新增 )向服務器提交資源(例如提交表單或上傳文件)。數據被包含在請求體中提交給服務器。
    3PUT修改 )向服務器提交資源,并使用提交的新資源,替換掉服務器對應的舊資源。
    4DELETE刪除 )請求服務器刪除指定的資源。
    5HEADHEAD 方法請求一個與 GET 請求的響應相同的響應,但沒有響應體。
    6OPTIONS獲取http服務器支持的http請求方法,允許客戶端查看服務器的性能,比如ajax跨域時的預檢等。
    7CONNECT建立一個到由目標資源標識的服務器的隧道。
    8TRACE沿著到目標資源的路徑執行一個消息環回測試,主要用于測試或診斷。
    9PATCH是對 PUT 方法的補充,用來對已知資源進行局部更新 。

    5. HTTP響應狀態碼

    5.1 什么是HTTP響應狀態碼

    HTTP 響應狀態碼(HTTP Status Code),也屬于 HTTP 協議的一部分,用來標識響應的狀態
    響應狀態碼會隨著響應消息一起被發送至客戶端瀏覽器,瀏覽器根據服務器返回的響應狀態碼,就能知道這次 HTTP 請求的結果是成功還是失敗了。

    5.2 HTTP響應狀態碼的組成及分類

    HTTP 狀態碼由三個十進制數字組成,第一個十進制數字定義了狀態碼的類型,后兩個數字用來對狀態碼進行細分。

    HTTP 狀態碼共分為 5 種類型:

    分類分類描述
    1 **信息,服務器收到請求,需要請求者繼續執行操作(實際開發中很少遇到 1** 類型的狀態碼)
    2**成功,操作被成功接收并處理
    3**重定向 ,需要進一步的操作以完成請求
    4** 客戶端錯誤 ,請求包含語法錯誤或無法完成請求
    5** 服務器錯誤 ,服務器在處理請求的過程中發生了錯誤

    更多 HTTP 響應狀態碼,請參閱 MDN 官方文檔:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status

    5.3 常見HTTP響應狀態碼

    5.3.1 成功響應狀態碼 2**

    2** 范圍的狀態碼,表示服務器已成功接收到請求并進行處理。常見的 2** 類型的狀態碼如下:

    狀態碼狀態碼英文名稱中文描述
    200OK請求成功。一般用于 GET 與 POST 請求
    201Created已創建。成功請求并創建了新的資源,通常用于 POST 或 PUT 請求

    5.3.2 重定向相關的響應狀態碼 3**

    3** 范圍的狀態碼,表示表示服務器要求客戶端重定向,需要客戶端進一步的操作以完成資源的請求。常見的 3** 類型的狀態碼如下:

    狀態碼狀態碼英文名稱中文描述
    301Moved Permanently永久移動。請求的資源已被永久的移動到新URI,返回信息會包括新的URI,瀏覽器會自動定向到新URI。今后任何新的請求都應使用新的URI代替
    302Found臨時移動。與301類似。但資源只是臨時被移動。客戶端應繼續使用原有URI
    304Not Modified未修改。所請求的資源未修改,服務器返回此狀態碼時,不會返回任何資源(響應消息中不包含響應體)。客戶端通常會緩存訪問過的資源。

    5.3.3 客戶端錯誤相關的響應狀態碼 4**

    4** 范圍的狀態碼,表示客戶端的請求有非法內容,從而導致這次請求失敗。常見的 4** 類型的狀態碼如下:

    狀態碼狀態碼英文名稱中文描述
    400Bad Request1、語義有誤,當前請求無法被服務器理解。除非進行修改,否則客戶端不應該重復提交這個請求。
    2、請求參數有誤。
    401Unauthorized當前請求需要用戶驗證。
    403Forbidden服務器已經理解請求,但是拒絕執行它。
    404 Not Found服務器無法根據客戶端的請求找到資源(網頁)
    408Request Timeout請求超時。服務器等待客戶端發送的請求時間過長,超時。

    5.3.4 服務端錯誤相關的響應狀態碼 5**

    5** 范圍的狀態碼,表示服務器未能正常處理客戶端的請求而出現意外錯誤。常見的 5** 類型的狀態碼如下:

    狀態碼狀態碼英文名稱中文描述
    500Internal Server Error服務器內部錯誤,無法完成請求。
    501Not Implemented服務器不支持該請求方法,無法完成請求。只有 GET 和 HEAD 請求方法是要求每個服務器必須支持的,其它請求方法在不支持的服務器上會返回501
    503Service Unavailable由于超載或系統維護,服務器暫時的無法處理客戶端的請求。

    【完】

    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的前端_网页编程 HTTP协议(进阶)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。