HTTP 狀態碼(HTTP Status Code)是用來表示網頁伺服器回應 HTTP 請求狀態的 3 位數字代碼。 [1]
五大分類概述
所有狀態碼的第一位數字定義了回應的類別,根據 MDN Web Docs 標準主要分為以下五大類: [2]
| 狀態碼範圍 |
類別名稱 |
核心定義 |
| 1xx |
資訊回應 (Informational) |
伺服器已成功接收請求,客戶端應繼續處理。 |
| 2xx |
成功回應 (Successful) |
請求已成功被伺服器接收、理解並接受。 |
| 3xx |
重新導向 (Redirection) |
必須採取進一步的操作(如跳轉網頁)才能完成請求。 |
| 4xx |
用戶端錯誤 (Client Error) |
請求包含錯誤語法,或伺服器無法識別、處理該請求。 |
| 5xx |
伺服器端錯誤 (Server Error) |
伺服器在處理一個有效的請求時發生內部錯誤。 |
最常遇到的 10 個核心狀態碼
在網頁開發與日常瀏覽中,最常使用到的狀態碼包含:
- 200 OK:最常見的成功狀態,代表網頁或 API 請求成功並正常回傳。
- 204 No Content:請求成功,但伺服器不需回傳任何內容(常用於
DELETE 請求)。
- 301 Moved Permanently:資源已永久移到新網址,瀏覽器未來會直接導向新位置。
- 302 Found:資源暫時移到新網址,未來請求仍應使用原網址。
- 304 Not Modified:內容與快取一致,瀏覽器直接讀取本地快取,不需重複下載。
- 400 Bad Request:客戶端請求語法錯誤、參數不對,導致伺服器無法解析。
- 401 Unauthorized:未認證錯誤,客戶端必須提供有效的登入憑證或 Token。
- 403 Forbidden:伺服器理解請求,但客戶端權限不足,拒絕提供資源。
- 404 Not Found:伺服器找不到請求的資源或網頁網址不存在。
- 500 Internal Server Error:通用的伺服器內部錯誤,通常是程式碼出錯或搶票時伺服器過載。 [3, 4, 5, 6, 7, 8]
如果您正在開發特定專案,可以告訴我您目前正在處理前端串接還是後端 API 設計,我可以為您提供更符合情境的錯誤處理建議。
[1] https://zh.wikipedia.org
[2] https://developer.mozilla.org