OAuth 2.0 - 錯誤響應和程式碼
授權伺服器使用 HTTP 400 或 401 狀態程式碼進行響應。如果在授權期間發生錯誤,則會發生兩種情況。在第一種情況下,客戶端未識別或未被識別。在第二種情況下,儘管客戶端被精確識別,但其他某些內容仍然失敗。在這種情況下,錯誤響應將如下發送回客戶端:
error_description − 它是一個可選的人類可讀錯誤描述,使用 Content-Language 標頭指定的語言,旨在供開發人員使用,而不是終端使用者。
error_uri − 它是一個可選的連結,指向包含有關錯誤資訊的易於理解的網頁,這可能有助於解決問題。
error − 它是一組預定義的錯誤程式碼。
以下是錯誤程式碼和等效 HTTP 狀態程式碼的描述。
400 錯誤
下表顯示了帶有描述的 400 錯誤。
| 序號 | 錯誤和描述 |
|---|---|
| 1 | unsupported_over_http OAuth 2.0 僅支援透過 https 進行呼叫。 |
| 2 | version_rejected 如果提供了不受支援的 OAuth 版本。 |
| 3 | parameter_absent 如果請求中缺少必需的引數。 |
| 4 | parameter_rejected 當給定引數過長時。 |
| 5 | invalid_client 當提供無效的客戶端 ID 時。 |
| 6 | invalid_request 當提供無效的請求引數時。 |
| 7 | unsupported_response_type 當提供的響應型別與該特定請求不匹配時。 |
| 8 | unsupported_grant_type 當提供的授權型別與特定請求不匹配時。 |
| 9 | invalid_param 當提供無效的請求引數時。 |
| 10 | unauthorized_client 當客戶端未被授予執行某些操作的許可權時。 |
| 11 | access_denied 當資源所有者拒絕授權請求時。 |
| 12 | server_error 此錯誤顯示意外錯誤。 |
401 錯誤
下表顯示了帶有描述的 401 錯誤。
| 序號 | 錯誤和描述 |
|---|---|
| 1 | token_expired 當提供的令牌過期時。 |
| 2 | invalid_token 當提供的令牌無效時。 |
| 3 | invalid_callback 當請求中提供的 URI 與消費者金鑰不匹配時。 |
| 4 | invalid_client_secret 當提供的客戶端伺服器無效時。 |
| 5 | invalid_grant 當提供的令牌已過期或無效時。 |