Status Code(狀態碼)
又稱:狀態碼 · HTTP 狀態碼 · 429 · 401 · error code
伺服器在回應第一行給出的三位數字,告訴你這次請求成功了、是你弄錯了、還是它自己出錯了。
你會在什麼時候遇到它
AI 工具失敗時,那串數字是唯一的線索。分不清 401 和 429,你會一直在「換金鑰」和「等一等」之間選錯,白白浪費一整個下午。
打個比方
像快遞單上的狀態:「已簽收」(200)、「地址寫錯」(400)、「查無此人」(404)、「今天件太多,明天再送」(429)、「倉庫失火」(500)。看編號就知道該找誰、該做什麼。
最小範例
200 OK 成功,回應內文就是你要的東西
400 Bad Request 請求本身寫錯了(JSON 壞掉、缺欄位、參數不對)
401 Unauthorized 身分沒過:金鑰錯、沒帶、或已過期 ← 最常被誤解
403 Forbidden 身分對了,但你沒權限做這件事(例如這把金鑰不能碰這個模型)
404 Not Found 網址路徑不對,或那個資源不存在
429 Too Many Requests 你送太快、撞到速率上限;Retry-After 會說多久後可重試
500 Internal Server Error 伺服器自己出錯了,不是你的錯;稍後重試或等它修好記三個就夠用:401 是你的金鑰/身分有問題(去檢查 Authorization 標頭),429 是你太快(等一等、放慢、或做 backoff),500 是對方壞了(不是你的錯,重試或改個時間)。401 與 403 的分別:401 是「不知道你是誰、或你沒登入」,403 是「知道你是誰,但不准你做這件事」。
最常搞錯的地方
- 看到 401 就原封不動地重送。401 不會因為你多試幾次就變成 200;它在說你的身分憑證不對,要先去修金鑰或 Authorization 標頭,而不是重試。
- 把 429 當成伺服器壞掉就放棄。429 只是「太快」,是暫時性的;正確的反應是照 Retry-After 等一下、或用指數退避(exponential backoff)重試,而不是直接報錯收工。