前提認識:php
HTTP協議web
約定形式ajax
約定內容瀏覽器
1.請求報文緩存
請求行
GET http://127.0.0.1:3000/getData HTTP/1.1
請求方式 + 空格 + 請求路徑 + 空格 + HTTP 協議版本安全
請求頭
客戶端想要告訴服務端的一些額外信息,如下爲常見的請求頭(不用刻意去記憶):
服務器
請求體
此次請求客戶端想要發送給服務端的數據正文,通常在 GET 請求時不多用到,由於 GET 請求主觀上都是去「拿東西」。網絡
2.響應報文架構
狀態行
HTTP/1.1 200 OK
HTTP 協議版本 + 空格 + 狀態碼 + 空格 + 狀態描述dom
響應頭
服務端想要告訴客戶端的一些額外信息,常見的有如下:
響應體
此次請求服務端想要返回給客戶端的數據正文,通常返回的都是 HTML,也能夠返回數據, JavaScript 或者 CSS(須要修改響應頭中的響應類型)。
補充:狀態碼
狀態代碼由三位數字組成,第一個數字定義了響應的類別,且有五種可能取值。
- 1xx:指示信息 —— 表示請求已接收,繼續處理。
- 2xx:成功 —— 表示請求已被成功接收、理解、接受。
- 3xx:重定向 —— 要完成請求必須進行更進一步的操做。
- 4xx:客戶端錯誤 —— 請求有語法錯誤或請求沒法實現。
- 5xx:服務器端錯誤 —— 服務器未能實現合法的請求。
網絡基礎概念
IP 地址
設備在某一個網絡中的地址,目前最多見的格式:[0-255].[0-255].[0-255].[0-255] 即爲四個 0-255 的數字組成。本質是四組八位的二進制數。
做用就是標識一個網絡設備(計算機、手機、電視)在某一個具體的網絡當中的地址。
127.0.0.1 是本地迴環地址 localhost:用來測試本機服務器是否連通。
域名
因爲 IP 地址都是沒有規律的一些數字組成的,很難被人記住,不利於普遍傳播,因此就有人想出來要給 IP 起名字(別名)。
特殊的域名
localhost 含義爲本地主機,對應127.0.0.1 。這是一個保留域名,主要用於本地測試。
-DNS domain name system
經過寬帶運營商提供的服務器解析一個域名背後對應的 IP,這個過程叫作 DNS 尋址,幫你完成 DNS 尋址過程的服務器叫作 DNS 服務器。
hosts 文件
操做系統在發起對 DNS 服務器的查詢請求以前,會優先檢查本機的 hosts 文件。若是這個文件中包含了對當前須要解析的域名的配置,則再也不發起對 DNS 服務器的請求,直接使用 hosts 文件中的配置。
**總結請求響應流程 **
GET與POST
請求在網站的訪問過程當中很常見,而且請求分爲多種方式:GET、POST、PUT、DELETE、OPTIONS等。其中GET和POST最經常使用。
GET請求
常見的發起GET請求的方式
網頁中有許多效果使用的就是GET請求:
GET方式提交數據的格式
GET方式提交數據的特色:
POST請求
字面上理解,post就是指發送,提交,它能夠向指定的資源提交要被處理的數據。
GET方式提交數據經過URL傳遞到請求的頁面,提交的數據量通常較小,用於請求頁面數據。此外,GET方式傳遞的數據安全性低, 對於密碼等隱私信息、文件上傳必須使用POST方式提交。
特色 1-post 方式 安全性比較高 2-傳遞數據量大,請求對數據長度沒有要求 3-請求不會被緩存,也不會保留在瀏覽器歷史記錄中 用於:密碼等安全性要求比較高的場合,提交的數據量比較大:發佈文章,上傳文件。