在做接口測試的過程中,都會遇到一些http協議,什么是http協議?
什么是http協議
HTTP協議是Hyper Text Transfer Protocol(超文本傳輸協議)的縮寫,是用於從萬維網(WWW:World Wide Web )服務器傳輸超文本到本地瀏覽器的傳送協議。基於TCP的應用層協議,它不關心數據傳輸的細節,HTTP(超文本傳輸協議)是一個基於請求與響應模式的、無狀態的、應用層的協議,只有遵循統一的 HTTP 請求格式,服務器才能正確解析不同客戶端發的請求,同樣地,服務器遵循統一的響應格式,客戶端才得以正確解析不同網站發過來的響應。
什么是HTTPS
HTTPS 的全稱是Hyper Text Transfer Protocol over Secure Socket Layer ,是以安全為目標的HTTP通道,簡單的講是HTTP的安全版本,即HTTP下加入SSL層,簡稱HTTPS
其中HTTPS的安全基礎為SSL,因此通過它的傳輸的內容都是經過SSL加密的,它的主要作用可以分為兩種:
1、建立一個信息安全通道來保證數據傳輸的安全
2、確保網站的真實性,凡是使用了HTTPS 的網站,都可以通過點擊瀏覽器地址欄的鎖頭標志來查看網站認證之后的真實信息。
HTTP請求內容
HTTP 請求由請求行、請求頭、空行、請求體組成
請求行:請求方式 + URL + 協議版本
- 常見的請求方法有 GET、POST、PUT、DELETE、HEAD
- 客戶端要獲取的資源路徑(所謂的URL)
- 客戶端使用的 HTTP 協議版本號(目前使用的是http1.1)
請求頭:客戶端向服務器發送請求的補充說明
- host:請求地址
- User-Agent: 客戶端使用的操作系統和瀏覽器的名稱和版本.
- Content-Length:發送給HTTP服務器數據的長度。
- Content-Type:參數的數據類型
- Cookie:將cookie的值發送給HTTP 服務器
- Accept-Charset:自己接收的字符集
- Accept-Language:瀏覽器自己接收的語言
- Accept:瀏覽器接受的媒體類型
請求體:一般攜帶的請求參數
- application/json:{"name":"value","name1":"value2”}
- application/x-www-form-urlencoded: name1=value1&name2=value2
- multipart/from-data:表格形式
- text/xml
- content-type:octets/stream
HTTP響應內容
HTTP 響應格式與請求的格式很相似,也是由響應行、響應頭、空行、響應體組成。
狀態行:HTTP 版本號 + 響應狀態碼 + 狀態說明
- 響應狀態碼有 1XX、2XX、3XX、4XX、5XX、5XX。
-
1XX 提示信息 - 表示請求已被成功接收,繼續處理
-
2XX 成功 - 表示請求已被成功接收,理解,接受
-
3XX 重定向 - 要完成請求必須進行更進一步的處理
-
4XX 客戶端錯誤 - 請求有語法錯誤或請求無法實現
-
5XX 服務器端錯誤 - 服務器未能實現合法的請求響應頭
-
響應頭:響應頭與請求頭對應,是服務器對該響應的一些附加說明
響應體:它才是真正的響應數據,這些數據其實就是網頁的 HTML 源代碼
什么是URL
URL(Uniform Resource Locator,統一資源定位符),是WWW的統一資源定位標志,就是指網絡地址
格式

# URL格式 https://host:port/path?xxx=aaa&ooo=bbb ## http/https:這個是協議類型 ## host:服務器的IP地址或者域名 ## port:HTTP服務器的默認端口是80 ## path:訪問資源的路徑 ## url里面的?這個符號是個分割線,用來區分問號前面的是path,問號后面的是參數 ## url-params:問號后面的是請求參數,格式:xxx=aaa ## 多個參數用&符號連接
協議版本
HTTP1.0定義了三種請求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五種請求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
- get:請求指定的頁面信息,並返回實體主體。
- post:向指定資源提交數據進行處理請求,數據被包含在請求體中。
- HEAD:返回的響應中沒有具體的內容,用於獲取報頭。
- OPTIONS:返回服務器針對特定資源所支持的HTTP請求方法,也可以利用向web服務器發送‘*’的請求來測試服務器的功能性
- PUT:向指定資源位置上傳其最新內容
- DELETE:請求服務器刪除Request-URL所標識的資源
- TRACE:回顯服務器收到的請求,主要用於測試或診斷
- CONNECT:HTTP/1.1協議中預留給能夠將連接改為管道方式的代理服務器。