天天看點

ajax學習第五天ajax學習第五天

ajax學習第五天

文章目錄

  • ajax學習第五天
    • 1.HTTP協定
      • 1.1 通信
      • 1.2 網際網路中的通信
    • 2.HTTP請求消息
      • 2.1 請求消息的組成部分
      • 2.2 請求行
      • 2.3 請求頭部
      • 2.4 空行
      • 2.5 請求體
    • 3. HTTP 響應消息
      • 3.1 狀态行
      • 3.2 響應頭部
      • 3.3 空行
      • 3.4 響應體
    • 4.HTTP請求方法
    • 5. 響應狀态碼
      • 5.1 響應碼的分類

1.HTTP協定

1.1 通信

  • 資訊的傳遞和交換
  • 通信的三要素
    • 通信的主體
    • 通信的内容
    • 通信的方式

1.2 網際網路中的通信

  • 通信主體:伺服器和用戶端浏覽器
  • 通信内容:網頁内容(HyperText),超文本
  • 通信協定:雙方完成通信所必須遵守的規則和約定(HTTP協定)
  • 通信方式:
    • 用戶端要以HTTP協定的要求的格式把資料**送出**到伺服器
    • 伺服器要以HTTP協定要求的格式把資料**響應**給用戶端
  • 圖解
ajax學習第五天ajax學習第五天

2.HTTP請求消息

  • HTTP請求:用戶端發起的請求
  • HTTP請求消息(請求封包):用戶端發送的伺服器的消息

2.1 請求消息的組成部分

  • 圖解
ajax學習第五天ajax學習第五天

2.2 請求行

  • 圖解
ajax學習第五天ajax學習第五天
  • 示例
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../day04/lib/jquery.js"></script>
</head>

<body>
    <button id="getBtn">發起get請求</button>
    <button id="postBtn">發起post請求</button>

    <script>
        $(function() {
            // 發起get請求

            $("#getBtn").on("click", function() {
                // $.get("http://www.liulongbin.top:3006/api/get", {
                //     name: "k",
                //     age: 18
                // }, function(res) {
                //     console.log(res);
                // })

                $.ajax({
                    method: 'get',
                    url: "http://www.liulongbin.top:3006/api/get",
                    data: {
                        name: "k"
                    },
                    success: function(res) {
                        console.log(res);
                    }
                })
            })


            // 發起post請求

            $("#postBtn").on("click", function() {
                $.post("http://www.liulongbin.top:3006/api/post", {
                    name: "k",
                    age: 20
                }, function() {
                    console.log(res);
                })
            })
        })
    </script>
</body>

</html>
           
  • get請求的效果圖
ajax學習第五天ajax學習第五天
  • post請求的效果圖
ajax學習第五天ajax學習第五天

2.3 請求頭部

  • 請求頭部:描述用戶端的基本資訊
  • 常見的請求頭字段
頭部字段 說明
Host 要請求的伺服器名
Connection 用戶端與伺服器的連接配接方式
Content-Length 用于描述請求體的大小
Accept 用戶端可識别的響應内容清單
User-Agent 用戶端使用的浏覽器類型
Content-Type 用戶端告訴浏覽器的實際發送的資料類型
Accept-Encodeing 用戶端可接收的内容壓縮編碼形式
Accept-Language 用戶端可識别的自然語言
  • 圖示
ajax學習第五天ajax學習第五天

2.4 空行

  • 分隔請求頭部和請求體
  • 表示請求頭部至此結束
  • 圖解
ajax學習第五天ajax學習第五天

2.5 請求體

  • 通過**POST請求發送給伺服器的資料**
ajax學習第五天ajax學習第五天
  • post請求的請求體
ajax學習第五天ajax學習第五天

3. HTTP 響應消息

  • 伺服器響應給用戶端的消息,響應封包
  • 圖解
ajax學習第五天ajax學習第五天

3.1 狀态行

  • 由HTTP協定版本、狀态碼和狀态碼的描述文本組成
ajax學習第五天ajax學習第五天
  • 示例圖
ajax學習第五天ajax學習第五天

3.2 響應頭部

  • 響應頭部用于描述伺服器的基本資訊,響應頭部的鍵值對組成,鍵值對之間用冒号分隔
ajax學習第五天ajax學習第五天
  • 示例圖
ajax學習第五天ajax學習第五天

3.3 空行

  • 最後一個響應頭部後緊跟一個空行,表示響應頭部至此結束
  • 用于分隔響應頭部和響應體
ajax學習第五天ajax學習第五天

3.4 響應體

  • 存放伺服器響應給用戶端的資源内容
ajax學習第五天ajax學習第五天

4.HTTP請求方法

  • 是HTTP協定中的一部分,用來表明要對伺服器上的資源執行的操作,最常用的請求方法是GET和POST
  • 圖解
ajax學習第五天ajax學習第五天

5. 響應狀态碼

  • HTTP協定的一部分,用于辨別響應的狀态
  • 圖解
ajax學習第五天ajax學習第五天
  • 響應碼的MDN文檔

<HTTP 響應代碼 - HTTP | MDN (mozilla.org)>

5.1 響應碼的分類

ajax學習第五天ajax學習第五天
ajax學習第五天ajax學習第五天
ajax學習第五天ajax學習第五天
ajax學習第五天ajax學習第五天
ajax學習第五天ajax學習第五天

繼續閱讀