一、接口/HTTP協議


一、接口

API: Application Programming Interface, 應用程序可編程接口

1)接口分類

硬件接口:具有連接功能、適配。兩個硬件設備之間的連接方式(比如鼠標和電腦通過USB接口連接)

軟件接口:軟件程序之間數據交互的通道(用戶界面是軟件接口)

2)軟件接口分類

程序內部接口:是客戶端與服務器的接口,用來實現客戶端和服務器的數據傳遞

外部接口:比如通過第三方登錄,第三方支付,通過調用外部接口並返回當前的系統

3)常見的接口協議

webService接口:使用soup協議通過http傳輸,請求報文和返回報文都是xml格式的,常用測試工具有soupUI

http協議接口:目前使用最廣泛的,使用HTTP協議來傳輸數據,常見的請求方法有get、post等,常用測試工具有postman、jmeter

dubbo、 websocket、 ws://...、 ftp://等協議。

4)接口測試

本質是基於某種協議,發送一個請求給服務器,然后服務器返回一個響應,然后對響應數據進行分析,判斷是否與我們預期的返回一致,從而驗證功能是否正確。

 

二、HTTP協議解讀

1)http協議:超文本傳輸協議

2)https:簡單的來說,就是http的安全版,在http下加入了SSL層(SSL主要用戶web的安全傳輸協議)

3)http的默認端口號是:80 ,默認的端口在url可以不加

   https的默認端口號是:443 ,默認的端口在url可以不加

4)HTTP請求過程

客戶端:PC端的應用程序 瀏覽器 APP 小程序

HTTP通信:客戶端發送給服務器的請求信息

       服務器返回給客戶端的響應信息

客戶端:前端----->主動請求。能夠發起對應的請求的客戶端。

服務端:后端----->被動接受。

 

 

  

  擴展URL:

 

5)HTTP請求信息

請求行: 請求方法/請求網址/協議版本
請求頭部:header
host
connection
upgrade-insecure-requests
user-agent:用戶代理,通過客戶端代理
referer
accept-encoding
cookie
備注:域名和IP地址之間是映射關系,域名是為了好記

請求數據:

6)HTTP響應信息

狀態行:狀態碼
消息報頭:
    content-type:返回的數據格式
    test/html
    application/json
    application/xml

響應正文:

7)HTTP響應狀態碼

狀態碼           含義                 客戶端client                                 服務器端server 
1xx      | Informational 信息     啥都不用做,知道就好                          信息收到了,后續會處理                               
2xx      | Successful 成功        啥都不用做,知道就好                          請求已正確處理                                               
3xx      | Redirection 重定向     重新請求返回的新地址                          client需要的內容,由於一些原因,比如地址已發生變化了,然后返回該內容的新地址 
4xx      | 客戶端的錯誤            確保用正確的參數和信息正確,重新請求             請求已正確處理                               
5xx      | 服務器端的錯誤           都無需操作,服務器端改了bug后,重新發送請求      服務器端的代碼的bug導致了出錯

8)HTTP請求方法

get和post的區別:

a)應用場景不同

  get獲取資源

  post提交數據,創建新的數據/對已有數據的修改

b)參數存放 

  get請求的參數都可以顯示在瀏覽器網址上,通過?param=value【即query string方式】查詢字符串

  post可以使用query string,但是通常不這么做,通常放到body請求體當中

c)安全性

  get和post並沒有誰更安全,抓包都是可以看到里面的數據,網上說的post更安全是因為數據放到了body當中,肉眼看不到而已, 但其實也是不安全的,而get請求是直接在URL中肉眼可以看到

備注:加密與請求方法沒關系,什么東西都是可以加密的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM