REST介面設計規範

2021-08-18 12:01:55 字數 2191 閱讀 7452

介面請求引數和響應資料均使用utf-8編碼。

請求頭指定內容及編碼型別:

content-type: text/html; charset=utf-8

使用更安全的https協議進行資料傳輸。

介面返回資料使用json格式

1 http狀態碼

例如:http/1.1 400 bad request

2 業務狀態碼

伺服器通過業務狀態碼向使用者返回請求狀態和提示資訊。

業務狀態碼需進行統一管理,同一專案必需保證業務狀態碼具有唯一性。

例如:

請求成功時直接返回業務資料,失敗時返回錯誤碼和提示資訊。

下面是例子: 

#獲取指定使用者的資訊

get /v1/users/45701

成功返回:

失敗返回:

使用restful架構風格。

1 網域名稱

應該盡量將api部署在專用網域名稱之下。

2 版本

應該將api的版本號放入url。 

v1/

3 路徑(endpoint)

路徑又稱"終點"(endpoint),表示api的具體**。 

在restful架構中,每個**代表一種資源(resource),所以**中不能有動詞,只能有名詞,而且所用的名詞往往與資料庫的**名對應。一般來說,資料庫中的表都是同種記錄的"集合"(collection),所以api中的名詞也應該使用複數。

v1/users

4 http動詞

對於資源的具體操作型別,由http動詞表示。

常用的http動詞有下面四個(括號裡是對應的sql命令): 

lgetselect):從伺服器取出資源(一項或多項)。

lpostinsert):在伺服器新建乙個資源。

lputupdate):在伺服器更新資源。

ldeletedelete):從伺服器刪除資源。

下面是一些例子。

get /v1/rooms:列出房間列表

post /v1/rooms:新建乙個房間

get /v1/rooms/:獲取某個指定房間的資訊

put /v1/rooms/:更新某個指定房間的資訊

delete /v1/rooms/:刪除某個房間

5 返回結果

針對不同操作,伺服器向使用者返回的結果應該符合以下規範。 

get /v1/rooms:列出房間列表(陣列)

get /v1/rooms/:獲取某個指定房間的資訊(返回單個房間物件)

post /v1/rooms:新建乙個房間(返回新生成的房間物件)

put /v1/rooms/:更新某個指定房間的資訊(返回完整的資源物件)

delete /v1/rooms/:刪除某個房間(返回乙個空文件)

介面安全必須做到以下2點:

IOS ios介面設計規範

在iphone 6還沒出的時候,都是用640 1136 px來做設計稿的,自從6的發布,所有的設計稿尺寸以750 1334 px來做設計稿尺寸 以750x1334px作為設計稿標準尺寸的原由 從中間尺寸向上和向下適配的時候介面調整的幅度最小,最方便適配。大螢幕時代依然以小尺寸作為設計尺寸,會限制設計...

RESTFUL介面設計規範

rest 是representational state transfer的縮寫,意思是表述性狀態轉移,我個人理解就是資源資料的變化。api與使用者的通訊協議,總是使用https協議。協議網域名稱 應該盡量將api部署在專用網域名稱之下。如果確定api很簡單,不會有進一步擴充套件,可以考慮放在主網域...

微服務RESTful 介面設計規範

網路應用程式,分為前端和後端兩個部分。當前的發展趨勢,就是前端裝置層出不窮 手機 平板 桌面電腦 其他專用裝置.因此,必須有一種統一的機制,方便不同的前端裝置與後端進行通訊。這導致api構架的流行,甚至出現 apifirst 的設計思想。restful api是目前比較成熟的一套網際網路應用程式的a...