http-api-design
  • Introduction
  • Summary
    • 簡介
    • 基礎
      • 重心分離
      • 要求使用安全連線
      • 要求以 Accept 標頭註明版本
      • 以 ETag 支援快取
      • 提供 Request-Id 以便追溯
      • 以 Range 分割資料量大的回應
    • 需求
      • 回傳適當的狀態碼
      • 情況許可時提供全部資源
      • 接受需求本體的序列化 JSON
      • 使用一致的路徑格式
      • 小寫路徑與屬性
      • 支援非 ID 的便利存取
      • 減少巢狀路徑
    • 回應
      • 提供資源的 UUID
      • 提供標準時間戳記
      • 使用 UTC 時間並以 ISO 8601 格式表達
      • 巢狀表示外來鍵關係
      • 產生結構化的錯誤訊息
      • 顯示次數限制狀態
      • 保持所有回應中的 JSON 最小化
    • 產出
      • 提供機器可讀的 JSON 大綱
      • 提供一般人可讀的文件
      • 提供執行範例
      • 描述穩定性
Powered by GitBook
On this page

Was this helpful?

  1. Summary
  2. 需求

回傳適當的狀態碼

Previous需求Next情況許可時提供全部資源

Last updated 5 years ago

Was this helpful?

於每個回應回傳適當的狀態碼。成功地回應應該根據以下原則編碼:

  • 200: 同步需求執行成功,包含 GET 呼叫、DELETE 或 PATCH 呼叫、PUT 更新資源呼叫。

  • 201: 同步需求執行成功,包含 POST 呼叫,及 PUT 建立資源呼叫。

  • 202: 非同步需求已接受,包含 POST、PUT、DELETE 及 PATCH。

  • 206: GET 需求成功,但只回傳部分回應。詳見前一章。

謹慎使用認證與授權的錯誤碼:

  • 401 Unauthorized: 需求失敗,因為使用者未經認證。

  • 403 Forbidden: 需求失敗,由於使用者未經授權即存取特定資源。

回傳適合的狀態碼以提供錯誤資訊:

  • 422 Unprocessable Entity: 需求可被理解,但含有無效的參數。

  • 429 Too Many Requests: 超過次數限制,等下再試。

  • 500 Internal Server Error: 伺服器端出錯,應檢查站台狀態或回報問題。

參考 規範來對應使用者錯誤及伺服器錯誤的案例。

以 Range 分頁
HTTP response code spec