API 錯誤
API 以標準 HTTP 狀態碼及統一的回應主體回報錯誤。成功的回應直接回傳資料,不包裝於信封物件中。
錯誤格式
發生錯誤時,回應主體為 JSON 物件,包含單一欄位 error,其值為人類可讀的訊息:
{"error":"reaction not found"}
請優先依據 HTTP 狀態碼判斷,error 文字用於日誌記錄及對使用者的提示。
狀態碼
200 OK— 請求成功,主體包含資料。201 Created— 已建立新資源(部分 POST 端點)。204 No Content— 成功但無主體(部分刪除操作)。400 Bad Request— 請求主體或參數不正確。401 Unauthorized— Token 遺失、無效或已過期;或該路由無法使用個人 Token 存取。402 Payment Required— 操作受限於方案或配額(例如自訂媒體儲存需要 Premium)。403 Forbidden— Token 缺少此路由所需的存取範圍。404 Not Found— 資源不存在或不屬於你。409 Conflict— 狀態衝突(例如唯一值重複)。422 Unprocessable Entity— 主體語法正確,但未通過業務邏輯驗證。429 Too Many Requests— 超過請求頻率限制(參見限制)。500 Internal Server Error— 伺服器內部錯誤;請稍後重試。
如何處理
以 2xx 代碼視為成功。遇到 401/403 時,請檢查 Token 及其存取範圍。遇到 4xx(429 除外)時,請勿原封不動地重試——先修正請求。遇到 429 與 5xx 時,可採用指數退避策略重試。