日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

restful-api接口的设计规范介绍

發(fā)布時間:2024/10/14 编程问答 130 豆豆
生活随笔 收集整理的這篇文章主要介紹了 restful-api接口的设计规范介绍 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

???????首先,咱們得知道什么是restful-api,它產(chǎn)生的背景是什么,作用是什么,這樣以便于我們更好的去學習和掌握這門知識。

什么是restful-api:

????????EST,即Representational State Transfer的縮寫。直接翻譯的意思是"表現(xiàn)層狀態(tài)轉(zhuǎn)化"。
???????? 它是一種互聯(lián)網(wǎng)應用程序的API設計理念 :URL定位資源,用HTTP動詞(GET,POST,DELETE,DETC等)描述操作。

產(chǎn)生背景及作用:

???????近年來移動互聯(lián)網(wǎng)的發(fā)展,前端設備層出不窮(手機、平板、桌面電腦、其他專用設備…),前端與后端開發(fā)人員在進行開發(fā)時需要進行交互等測試,那問題來了,在這個交互和測試環(huán)節(jié)我們?nèi)绾芜_成一致了,方便測試呢?所以為了方便開發(fā)人員測試,提高開發(fā)效率,因此,必須有一種統(tǒng)一的機制來規(guī)范,于是RESTful誕生了,而且restful-api設計規(guī)范被大多數(shù)程序員認可,它可以通過一套統(tǒng)一的接口為 Web,iOS和Android提供服務。

???????相信大家看完上面的內(nèi)容應該對restful-api有了一定的了解和認識,那么接下來具體介紹一下restful-api的設計規(guī)范。

具體設計規(guī)范:

1.應該盡量將API部署在專用域名之下

http://api.douban.com/v2/user/1000001?apikey=XXX

2.應該將API的版本號放入URL

http://api.douban.com/v2/user/1000001?apikey=XXX

3.在RESTful架構(gòu)中,每個網(wǎng)址代表一種資源(resource),所以網(wǎng)址中不能有動詞,只能有名詞,而且所用的名詞往往與數(shù)據(jù)庫的表格名對應。一般來說,數(shù)據(jù)庫中的表都是同種記錄的"集合"(collection),所以API中的名詞也應該使用復數(shù)。

http://api.douban.com/v2/book/:id (獲取圖書信息)
http://api.douban.com/v2/movie/subject/:id (電影條目信息)
http://api.douban.com/v2/music/:id (獲取音樂信息)
http://api.douban.com/v2/event/:id (獲取同城活動)

4.對于資源的具體操作類型,請求方式,由HTTP動詞表示。常用的HTTP動詞有下面四個(對應增/刪/改/查)。

GET(select):從服務器取出資源(一項或多項)。
eg. 獲取圖書信息 GET http://api.douban.com/v2/book/:id

POST(create):在服務器新建一個資源。
eg.用戶收藏某本圖書 POST http://api.douban.com/v2/book/:id/collection

PUT(update):在服務器更新資源(客戶端提供改變后的完整資源)。
eg. 用戶修改對某本圖書的收藏PUThttp://api.douban.com/v2/book/:id/collection

DELETE(delete):從服務器刪除資源。
eg. 用戶刪除某篇筆記 DELETE http://api.douban.com/v2/book/annotation/:id

5.如果記錄數(shù)量很多,服務器不可能都將它們返回給用戶。API應該提供參數(shù),過濾返回結(jié)果

?limit=10:指定返回記錄的數(shù)量
eg. 獲取圖書信息 GEThttp://api.douban.com/v2/book/:id?limit=10

6.服務器向用戶返回的狀態(tài)碼和提示信息

每個狀態(tài)碼代表不同意思, 就像代號一樣
2系 代表正常返回
4系 代表數(shù)據(jù)異常
5系 代表服務器異常

接口安全:
1.API的身份認證應該使用OAuth 2.0框架。
2.技術團隊自己約定的規(guī)則

增加兩個參數(shù) time, token
time為時間戳, 用于判斷接口請求是否超時
token為時間戳加密后的字符串, 加密規(guī)則只有你們技術團隊自己知道

總結(jié)

以上是生活随笔為你收集整理的restful-api接口的设计规范介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。