本文主要介紹VPC執行個體的API Gateway錯誤碼錶。
本章節的錯誤碼表適用於Serverless執行個體和VPC專享執行個體。
當用戶端收到的應答中
X-Ca-Error-Code頭不為空白,表示應答碼由API Gateway產生,錯誤碼由一個6位長度的字元描述,請參考下表,而X-Ca-Error-Message表示錯誤的應答資訊,用於描述該情境下更詳細的一些錯誤資訊。如果
X-Ca-Error-Code頭為空白,則表示這個HTTP應答碼由後端服務產生,API Gateway透傳了來自後端的錯誤資訊。
API Gateway錯誤碼錶
錯誤碼 | HTTP狀態代碼 | Message | 描述 |
I400HD | 400 | Invalid Header `${HeaderName}` ${Reason} | HTTP要求標頭非法 |
I400MH | 400 | Header `${HeaderName}` is Required | 缺少HTTP要求標頭 |
I400BD | 400 | Invalid Body: ${Reason} | HTTP請求包體非法 |
I400PA | 400 | Invalid Request Path `${Reason}` | HTTP請求路徑非法 |
I405UM | 405 | Unsupported Method `${Reason}` | 不支援的HTTP要求方法 |
I400RU | 400 | Invalid Request Uri `${Reason}` | HTTP請求URL非法 |
I403PT | 403 | Invalid protocol ${Protocol} unsupported | 使用了API配置中不支援的協議,請檢查API配置的協議 |
I413RL | 413 | Request body too Large | 請求包體過長,相關限制參考使用限制 |
I413UL | 413 | Request URL too Large | 請求URL過長,相關限制參考使用限制 |
I400CT | 400 | Invalid Content-Type: `${Reason}` | 非法的`Content-Type` |
I404DO | 404 | Invalid Domain `${DomainName}` | 未知的請求網域名稱,請使用綁定的網域名稱進行調用 |
I410GG | 410 | Group's instance invalid | 請求了非法的執行個體,分組可能已經不屬於當前執行個體 |
I400SG | 400 | Invalid Stage | 請求了未知的環境 |
I404NF | 404 | API not found ${Reason} | 根據請求的`Path`,`Method`在當前的環境中未找到API,請參考I404NF錯誤碼排查 |
X400PM | 400 | Invalid plugin meta ${PluginName} ${Reason} | 外掛程式中繼資料非法 |
X500ED | 500 | Expired api definition | 到期的老版本中繼資料已經不被新版本API Gateway支援,需要提交工單修改老版本中繼資料 |
X500AM | 500 | Invalid Api Meta, try deploy again or contact us via ticket | 儲存的中繼資料定義格式錯誤,需要提交工單修複 |
X403DG | 403 | Bad Domain or Group: ${Reason} | 分組資料非法 |
B451DO | 451 | Unavailable Domain for Legal Reasons | 網域名稱因法律法規問題被禁 |
B451GO | 451 | Unavailable Group for Legal Reasons | 分組因法律法規問題被禁 |
B403OD | 403 | Provider Account Overdue | API提供方欠費,若是雲市場購買的API,請聯絡服務位址理 |
A401AC | 401 | Invalid AppCode ${Reason} | 當使用AppCode模式授權時,未找到AppCode,請核實App是否授權,AppCode是否有誤 |
A400IK | 400 | Invalid AppKey | 當使用`Key/Secret`簽名授權時,未找到AppKey |
A403IS | 403 | Invalid Signature, Server StringToSign:`${StringToSign}` | 簽名不匹配,排查請參考返回A403IS錯誤碼 |
A403EP | 403 | App authorization expired | 授權已到期,請重新授權 |
A403PR | 403 | Plugin Authorization Needed | 需要外掛程式授權 |
A400MA | 400 | Need authorization, `X-Ca-Key` or `Authorization: APPCODE ...` is required | 需要使用`Key/Secret`簽名授權或`AppCode`授權 |
I400I5 | 400 | Invalid Content-MD5 ${Reason} | 不匹配的`Content-MD5` |
I400NC | 400 | X-Ca-Nonce is required | 當設定了`使用X-Ca-Nonce防重放`選項時,必須提供`X-Ca-Nonce`頭 |
S403NU | 403 | Nonce Used | 檢測到請求重放,請求的`X-Ca-Nonce`頭重複 |
S403TE | 403 | X-Ca-Timestamp is expired | `X-Ca-Timestamp`頭中提供的時間戳記已到期,時間戳記有效期間15分鐘 |
I400MP | 400 | Parameter `${ParameterName}` is required | API中配置的必填參數未傳值 |
I400IP | 400 | Invalid parameter `${ParameterName}` ${Reason} | API中配置的參數值非法 |
I400JR | 400 | JWT required | 未找到JWT參數 |
S403JI | 403 | Claim `jti` is required when `preventJtiReplay:true` | 當在`JWT授權外掛程式`中配置了防重放功能時,請求未提供有效`jti` |
A403SV | 403 | Claim `jti` in JWT is used | 當在`JWT授權外掛程式`中配置了防重放功能時,請求提供的`jti`已被使用 |
I400JD | 400 | JWT Deserialize Failed: `${Token}` | 請求中提供的`JWT`解析失敗 |
A403JT | 403 | Invalid JWT: ${Reason} | 請求中提供的`JWT`非法 |
A403JK | 403 | No matching JWK, `${kid}` not found | 請求`JWT`中的`kid`沒有匹配的`JWK` |
A403JE | 403 | JWT is expired at `${Date}` | 請求中提供的`JWT`已到期 |
I400JP | 400 | Invalid JWT plugin config: ${JWT} | `JWT授權`外掛程式配置錯誤 |
A403OL | 403 | OAuth2 Login failed: ${Reason} | |
A403OU | 403 | OAuth2 Get User Info failed: ${Reason} | |
A401OT | 401 | Invalid OAuth2 Access Token | |
A401OM | 401 | OAuth2 Access Token is required | |
T429ID | 429 | Throttled by INNER DOMAIN Flow Control, ${Domain} is a test domain, only 1000 requests per day | 當使用預設次層網域訪問時,限制1000次/天,(海外Region及中國香港限制100次/天),請綁定正式網域名稱以解除這個限制 |
T429IN | 429 | Throttled by INSTANCE Flow Control | 觸發當前執行個體的流控限制,請升級執行個體規格 |
T429GR | 429 | Throttled by GROUP Flow Control | 觸發當前分組的流控限制,請升級執行個體規格 |
T429PA | 429 | Throttled by API Flow Control | 觸發外掛程式上的預設API流控 |
T429PR | 429 | Throttled by PLUGIN Flow Control | 觸發外掛程式的特殊流控 |
T429SR | 429 | Throttled by SERVER Flow Control | |
T429MR | 429 | Too Many Requests, throttle by `${Description}` | |
A403IP | 403 | Access denied by IP Control Policy | 被`IP存取控制外掛程式`阻止訪問 |
A403IN | 403 | Access from internet is disabled ${Reason} | `API`或`API分組`禁止從公網訪問,請從內網調用,文檔參考私網調用API |
A403VN | 403 | Access from invalid VPC is disabled | 來源VPC被阻止 |
A403AC | 403 | Access Control Forbidden by ${RuleName} | 被`授權控制`外掛程式阻止 |
A403CO | 403 | Cross origin resource forbidden ${Domain} | 被CORS策略阻止訪問 |
I404CO | 404 | Cross origin resource not found ${Method} - ${Path} | 根據CORS預檢請求中的Path與Method,無法找到API定義 |
I404CH | 404 | Content not cached, with `Cache-Control:only-if-cached` | |
I404NR | 404 | ${Resource} not found | |
I404SR | 404 | Stage route missing: ${Reason} | |
B403MO | 403 | Api Market Subscription overdue | API供應商欠費,請聯絡服務位址理 |
B403MQ | 403 | Api Market Subscription quota exhausted | 購買的雲市場API配額已耗盡,請續約次數 |
B403ME | 403 | Api Market Subscription expired | API訂購關係已到期,請重新訂購 |
B403MI | 403 | Api Market Subscription invalid | API市場訂購關係非法 |
D504RE | 504 | Backend domain `${Domain}` resolve failed | 後端網域名稱解析失敗,請核實後端網域名稱解析 |
D504IL | 504 | Backend domain `${Domain}` resolve to illegal address `${Address}` | 後端網域名稱解析結果非法 |
D504CO | 504 | Backend service connect failed `${Reason}` | 後端串連失敗,請檢查安全性群組、後端伺服器啟動狀態、或防火牆配置,排查可參考D504CO錯誤碼排查 |
504 | Backend service connect failed `Connection lease request time out` | API Gateway執行個體後端串連池不夠用導致的後端串連失敗,請升級執行個體規格 | |
D504CS | 504 | Backend http ssl connect failed `${Reason}` | 後端HTTPS串連失敗,請檢查後端配置的協議與連接埠是否匹配 |
D504TO | 504 | Backend service request timeout | API Gateway請求後端逾時,請調整後端逾時時間或提高後端服務響應速度 |
X504VE | 504 | Backend service vpc mapped failed | 後端VPC映射錯誤 |
D503BB | 503 | Backend circuit breaker busy | API被斷路器阻止 |
D503CB | 503 | Backend circuit breaker open, ${Reason} | API處於熔斷/斷路器開狀態,請檢查後端效能 |
I508LD | 508 | Loop Detected | 檢測到環回調用 |
I404DD | 404 | Device id ${DeviceId} not found | 當使用WebSocket雙向通訊調用時,DeviceId未找到 |
A403FC | 403 | Function Compute AssumeRole failed ${RequestId}:${Reason} | 後端是Function Compute時授權錯誤 |
D502FC | 502 | Function Compute response invalid: ${Reason} | 後端是Function Compute時,來自後端的應答非法 |
N502RE | 502 | Send Response IO Exception: ${Reason} | 發送應答給用戶端時報錯,常見於用戶端提前關閉串連或網路錯誤 |
X500ER | 500 | Service Internal Error | 伺服器內部錯誤,請提交工單聯絡工作人員 |
X503BZ | 503 | Service Busy | API Gateway服務忙,請稍後再試 |
X504TO | 504 | Service timeout | API Gateway處理逾時,請提交工單聯絡工作人員 |
部分錯誤碼可能隨著升級或新功能的加入而改變。