API接口設計,rest,soap
阿新 • • 發佈:2019-02-20
語言 最好 pos 語義 理念 XML json 怎樣 描述
REST之前的重要協議SOAP
rest(簡單理解風格、約束、設計理念)
rest之前是SOAP:SOAP Web API采用RPC風格,它采用面向功能的架構,所以我們在設計SOAP Web API的時候首相考慮的是應高提供怎樣的功能(或者操作)。RESTful Web API采用面向資源的架構,所以在設計之初首先需要考慮的是有哪些資源可供操作
SOAP通常以xml描述數據而rest提倡json描述數據(xml和json都是通用格式的與語言無關,可以在不同的語言中互通)
RESTFul API基於REST 的api設計理念 (輕,通常用json描述數據,無狀態)
基於資源,增刪改查只是對於資源狀態的改變
使用http動詞(GET:查詢、POST:創建、PUT:更新、DELETE:刪除)來操作資源
查詢get:/movie/:mid 不符合rest規範的:/getmovie/:mid
對每個http請求的響應結果都指明一個特別的狀態碼(200、201、202、400、401、403、404、500、...)
如:403:當A用戶請求了B用戶的id號那麽判斷越權返回403
錯誤碼:自定義的錯誤id號
統一描述錯誤:錯誤碼、錯誤信息、當前url
使用Token令牌來授權和驗證身份(這裏不用cookie)
版本控制
測試與生產環境分開:api/xxx.com <-------> dev.api.xxx.com
url語義要明確,最好可以望文知義
最好有一份比較標準的文檔
參考豆瓣開放API 和github開發者API
不要盲目照搬rest標準哦
API接口設計,rest,soap