api接口規范


整體規范建議采用RESTful 方式來實施。

協議

API與用戶的通信協議,總是使用HTTPs協議,確保交互數據的傳輸安全。

api版本控制

應該將API的版本號放入URL。
https://api.example.com/v{n}/
另一種做法是,將版本號放在HTTP頭信息中,但不如放入URL方便和直觀。

采用多版本並存,增量發布的方式
v{n} n代表版本號,分為整形和浮點型
整形的版本號: 大功能版本發布形式;具有當前版本狀態下的所有API接口 ,例如:v1,v2
浮點型:為小版本號,只具備補充api的功能,其他api都默認調用對應大版本號的api 例如:v1.1 v2.2

 

API 路徑規則

 

路徑又稱"終點"(endpoint),表示API的具體網址。
在RESTful架構中,每個網址代表一種資源(resource),所以網址中不能有動詞,只能有名詞,而且所用的名詞往往與數據庫的表格名對應。一般來說,數據庫中的表都是同種記錄的"集合"(collection),所以API中的名詞也應該使用復數。
舉例來說,有一個API提供動物園(zoo)的信息,還包括各種動物和雇員的信息,則它的路徑應該設計成下面這樣。

https://api.example.com/v1/products
https://api.example.com/v1/users
https://api.example.com/v1/employees

 

HTTP請求方式

對於資源的具體操作類型,由HTTP動詞表示。
常用的HTTP動詞有下面四個(括號里是對應的SQL命令)。
GET(SELECT):從服務器取出資源(一項或多項)。
POST(CREATE):在服務器新建一個資源。
PUT(UPDATE):在服務器更新資源(客戶端提供改變后的完整資源)。
DELETE(DELETE):從服務器刪除資源。

下面是一些例子。

GET /product:列出所有商品
POST /product:新建一個商品
GET /product/ID:獲取某個指定商品的信息
PUT /product/ID:更新某個指定商品的信息
DELETE /product/ID:刪除某個商品
GET /product/ID/purchase :列出某個指定商品的所有投資者
get /product/ID/purchase/ID:獲取某個指定商品的指定投資者信息

返回數據

只要api接口成功接到請求,就不能返回200以外的HTTP狀態。
為了保障前后端的數據交互的順暢,建議規范數據的返回,並采用固定的數據格式封裝。

接口返回模板:

{
status:0,
data:{}||[],
msg:’’
}

status: 接口的執行的狀態

=0表示成功
<0 表示有異常
》0 表示接口有部分執行失敗

Data 接口的主數據

,可以根據實際返回數組或JSON對象

Msg

當status!=0 都應該有錯誤信息

 


免責聲明!

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



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