iOS 8:【轉】RESTful編程最佳實務

來源:互聯網
上載者:User

標籤:

源地址:http://fann.im/blog/2013/07/15/best-practices-for-restful-api/

做服務端開發,免不了有對外介面,正好看到 Best Practices for Designing a Pragmatic RESTful API,簡單摘抄做個筆記。

  1. API 就是面對開發人員的 UI,所以要對開發人員友好,能方便在瀏覽器輸入訪問。
  2. 盡量遵守 Web 標準。
  3. 使用 RESTful URLs。URL 標識資源,HTTP Method(GET/POST/PUT/DELETE) 操作控制資源,其中 GET 擷取,POST 建立,PUT 更新,DELETE 刪除,還有一個 PATCH 部分更新。
  4. URL 用複數形式標識資源。
  5. URL 資源作為一個原子操作。
  6. 文檔,並且配上相應樣本,最好提供可直接瀏覽器+curl 的例子。
  7. API 一旦確定就不輕易修改,更新和刪除要有對應文檔說明。
  8. API 要有版本,並且直接在 URL 中表現出來,比如 /api/1/xyz.
  9. URL 可以跟上條件過濾控制參數,比如 /tickets?state=open
  10. 把常用的條件集合封裝成一個 URL 資源,比如 /tickets/recently_closed
  11. URL 可包含一個返回欄位列表,只返回指定欄位內容,比如 /tickets?fields=id,subject
  12. 只有 JSON 格式,然後也就沒有必要在 URL 指明 format 尾碼。
  13. URL 採用蛇形命名(底線形式),比如 user_timeline.
  14. API 返回要設定 Content-Type,結果用 Gzip 壓縮。
  15. RESTful GET 只能讀取,不允許修改資料。
  16. API 請求有次數限制,類似 Twitter Rate Limiting
  17. 如有需要,用 OAuth 2 認證。
  18. API 頭部資訊包含 ETag 等緩衝資訊。
  19. 有用的錯誤資訊:唯一錯誤碼+錯誤描述資訊,有對應文檔。
  20. 充分利用 HTTP status code,比如 200/201/204/304/401/403/404/405.

iOS 8:【轉】RESTful編程最佳實務

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.