RESTful API好的設計規範
RESTful基於HTTP協議,其核心是一切事物都可以看做資源。RESTful API就是通過HTTP Action對資源進行管理操作。在RESTful服務中,客戶端向服務端發起索取資源的操作通過HTTP協議語義來進行交互。最常用的HTTP協議語義有以下5個:
GET : 從伺服器取出資源(一項或多項)
發送一條或多條GET請求都不會改變伺服器裡面的資源,同一個request發一遍和發多遍都將獲得相同結果。
POST:在伺服器新建一個資源
發送的POST請求中會包含希望創建的新資源。收到POST請求后,伺服器會新增資源。
PUT:在伺服器更新資源(客戶端提供完整資源數據)
客戶端發送PUT請求對資源進行修改(更新),伺服器的資源發生變化。
Advertisements
DELETE:從伺服器刪除資源
發送Delete請求之後,服務端資源將消失。再次發送一條Delete請求,客戶端獲取的資源狀態和第一次發送Delete請求后的狀態是一致的。
HEAD : 從伺服器獲取報頭信息(不是資源)
當不知道使用何種請求方式獲取客戶端資源時,可以使用HEAD方式,此時客戶端返回的不是具體的資源信息,只是HTTP狀態碼和報頭。
GET、HEAD和OPTIONS均被認為是安全的方法,而PUT、POST、DELETE等請求都是不安全的(會修改數據)。
客戶端與服務端進行交互響應常用媒體表現類型:
application/json: JSON數據格式
application/xhtml+xml:XHTML格式
Advertisements
application/xml: XML數據格式
application/atom+xml:Atom XML聚合格式
HTTP狀態碼的英文為HTTP Status Code,常見的HTTP狀態碼:
200 - 請求成功
301 - 資源(網頁等)被永久轉移到其它URL
404 - 請求的資源(網頁等)不存在
500 - 內部伺服器錯誤