REST四種請求(get,delete,put,post) 收集整理 之一


轉自:http://blog.csdn.net/cloudcraft/article/details/10087033

資源是REST中最關鍵的抽象概念,它們是能夠被遠程訪問的應用程序對象。一個資源就是一個標識單位,任何可以被訪問或被遠程操縱的東西都可能是一個資源。資源可以是靜態的,也就是該資源的狀態永遠不會改變。相反,某些資源的狀態可能隨着時間推移呈現很大的可變性。這兩種類型的資源都是有效的

        為了簡化整體系統架構,REST架構風格包含了統一接口的概念。統一接口包含一組受限的良定義的操作,由它們進行資源的訪問和操作。不論什么資源,都使用相同的接口。客戶端與Hotel,Room或CreditScore等資源交互時使用的接口是一樣的。統一接口獨立於資源的URI,並且也不需要類似IDL的文件去描述可用的操作。

RESTful HTTP的接口非常流行且廣為使用。它包含標准的HTTP方法如GET,PUT和POST(瀏覽器使用它發出請求並提取頁面)。不幸的是,很多開發者認為實現RESTful應用就是用一種直接使用HTTP的方式,這種理解是錯誤的。舉個例子,HTTP方法的實現必須要遵循HTTP規范的,而通過GET方法創建或修改對象是不遵守HTTP規范的。


GET

[ruby]  view plain copy
  1.  - 獲取表示  
  2.   
  3. - 變更時獲取表示(緩存)  
  4.   
  5. 200(OK) - 表示已在響應中發出  
  6.   
  7. 204(無內容) - 資源有空表示  
  8.   
  9. 301(Moved Permanently) - 資源的URI已被更新  
  10.   
  11. 303(See Other) - 其他(如,負載均衡)  
  12.   
  13. 304(not modified)- 資源未更改(緩存)  
  14.   
  15. 400 (bad request)- 指代壞請求(如,參數錯誤)  
  16.   
  17. 404 (not found)- 資源不存在  
  18.   
  19. 406 (not acceptable)- 服務端不支持所需表示  
  20.   
  21. 500 (internal server error)- 通用錯誤響應  
  22.   
  23. 503 (Service Unavailable)- 服務端當前無法處理請求  

DELETE

[ruby]  view plain copy
  1. - 刪除資源  
  2. 200 (OK)- 資源已被刪除  
  3.   
  4. 301 (Moved Permanently)- 資源的URI已更改  
  5. 303 (See Other)- 其他,如負載均衡  
  6.   
  7. 400 (bad request)- 指代壞請求t  
  8. 404 (not found)- 資源不存在  
  9. 409 (conflict)- 通用沖突  
  10.   
  11. 500 (internal server error)- 通用錯誤響應  
  12. 503 (Service Unavailable)- 服務端當前無法處理請求  

PUT

[ruby]  view plain copy
  1. - 用客戶端管理的實例號創建一個資源  
  2.   
  3. - 通過替換的方式更新資源  
  4.   
  5. - 如果未被修改,則更新資源(樂觀鎖)  
  6.   
  7. 200 (OK)- 如果已存在資源被更改  
  8. 201 (created)- 如果新資源被創建  
  9.   
  10. 301(Moved Permanently)- 資源的URI已更改  
  11.   
  12. 303 (See Other)- 其他(如,負載均衡)  
  13.   
  14. 400 (bad request)- 指代壞請求  
  15.   
  16. 404 (not found)- 資源不存在  
  17.   
  18. 406 (not acceptable)- 服務端不支持所需表示/p>  
  19.   
  20. 409 (conflict)- 通用沖突  
  21.   
  22. 412 (Precondition Failed)- 前置條件失敗(如執行條件更新時的沖突)  
  23.   
  24. 415 (unsupported media type)- 接受到的表示不受支持  
  25.   
  26. 500 (internal server error)- 通用錯誤響應  
  27.   
  28. 503 (Service Unavailable)- 服務當前無法處理請求  

POST

[ruby]  view plain copy
  1. - 使用服務端管理的(自動產生)的實例號創建資源  
  2.   
  3. - 創建子資源  
  4.   
  5. - 部分更新資源  
  6.   
  7. - 如果沒有被修改,則不過更新資源(樂觀鎖)  
  8.   
  9. 200(OK)- 如果現有資源已被更改  
  10. 201(created)- 如果新資源被創建  
  11. 202(accepted)- 已接受處理請求但尚未完成(異步處理)  
  12.   
  13. 301(Moved Permanently)- 資源的URI被更新  
  14. 303(See Other)- 其他(如,負載均衡)  
  15.   
  16. 400(bad request)- 指代壞請求  
  17. 404 (not found)- 資源不存在  
  18. 406 (not acceptable)- 服務端不支持所需表示  
  19. 409 (conflict)- 通用沖突  
  20. 412 (Precondition Failed)- 前置條件失敗(如執行條件更新時的沖突)  
  21. 415 (unsupported media type)- 接受到的表示不受支持  
  22.   
  23. 500 (internal server error)- 通用錯誤響應  
  24. 503 (Service Unavailable)- 服務當前無法處理請求  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM