RESTful介面規範之GET/POST/PUT/DELETE
阿新 • • 發佈:2018-11-29
REST 是Representational State Transfer的縮寫,翻譯是”表現層狀態轉化”.
面向資源是REST最明顯的特徵,對於同一個資源的一組不同的操作。資源是伺服器 上一個可命名的抽象概念,資源是以名詞為核心來組織的,首先關注的是名詞。REST要求,必須通過統一的介面來對資源執行各種操作。對於每個資源只能執行一組有限的操 作。
7個HTTP方法:GET/POST/PUT/DELETE/PATCH/HEAD/OPTIONS
GET
安全且冪等
表示獲取
200(OK) - 表示已在響應中發出 204(無內容) - 資源有空表示 301(Moved Permanently) - 資源的URI已被更新 303(See Other) - 其他(如,負載均衡) 304(not modified)- 資源未更改(快取) 400 (bad request)- 指代壞請求(如,引數錯誤) 404 (not found)- 資源不存在 406 (not acceptable)- 服務端不支援所需表示 500 (internal server error)- 通用錯誤響應 503 (Service Unavailable)- 服務端當前無法處理請求
POST
不安全且不冪等
使用服務端管理的(自動產生)的例項號建立資源
建立子資源
200(OK)- 如果現有資源已被更改 201(created)- 如果新資源被建立 202(accepted)- 已接受處理請求但尚未完成(非同步處理) 301(Moved Permanently)- 資源的URI被更新 303(See Other)- 其他(如,負載均衡) 400(bad request)- 指代壞請求 404 (not found)- 資源不存在 406 (not acceptable)- 服務端不支援所需表示 409 (conflict)- 通用衝突 412 (Precondition Failed)- 前置條件失敗(如執行條件更新時的衝突) 415 (unsupported media type)- 接受到的表示不受支援 500 (internal server error)- 通用錯誤響應 503 (Service Unavailable)- 服務當前無法處理請求
PUT
不安全但冪等
通過替換的方式更新資源
如果未被修改,則更新資源(樂觀鎖)
200 (OK)- 如果已存在資源被更改 201 (created)- 如果新資源被建立 301(Moved Permanently)- 資源的URI已更改 303 (See Other)- 其他(如,負載均衡) 400 (bad request)- 指代壞請求 404 (not found)- 資源不存在 406 (not acceptable)- 服務端不支援所需表示 409 (conflict)- 通用衝突 412 (Precondition Failed)- 前置條件失敗(如執行條件更新時的衝突) 415 (unsupported media type)- 接受到的表示不受支援 500 (internal server error)- 通用錯誤響應 503 (Service Unavailable)- 服務當前無法處理請求
DELETE
不安全但冪等
刪除資源
200 (OK)- 資源已被刪除
301 (Moved Permanently)- 資源的URI已更改
303 (See Other)- 其他,如負載均衡
400 (bad request)- 指代壞請求
404 (not found)- 資源不存在
409 (conflict)- 通用衝突
500 (internal server error)- 通用錯誤響應
503 (Service Unavailable)- 服務端當前無法處理請求