處理 REST API 錯誤

HTTP 錯誤回應分為兩大類:

  • 客戶端錯誤 (400 碼級) ——客戶端發送了無效請求,或請求不符合定義。
  • 伺服器錯誤 (500 級) ——伺服器暫時未能完成請求或發生伺服器錯誤。 再試著發送一次 HTTP 請求。

下表列出的錯誤代碼可透過任何 適用於端點的 Microsoft Defender API 回傳。

  • 除了錯誤代碼外,每個錯誤回應都包含錯誤訊息,有助於解決問題。
  • 訊息是免費文字,可以更改。
  • 在頁面底部,你可以找到回應範例。
錯誤碼 HTTP 狀態碼 郵件
壞請求 壞請求 (400) 一般錯誤請求錯誤訊息。
OData錯誤 壞請求 (400) ) 指定特定錯誤 (無效的 OData URI 查詢。
InvalidInput 壞請求 (400) 輸入無效{無效輸入}。
InvalidRequestBody 壞請求 (400) 請求無效。
InvalidHashValue 壞請求 (400) 雜湊值{無效雜湊}是無效的。
無效網域名稱 壞請求 (400) 網域名稱{the invalid domain}是無效的。
InvalidIpAddress 壞請求 (400) IP 位址 {the invalid IP} 是無效的。
InvalidUrl 壞請求 (400) URL {the invalid URL} 是無效的。
最大批次大小已超過 壞請求 (400) 最大批次數量超過。 收到:{批次大小已接收},允許:{批次大小允許}。
缺少必需參數 壞請求 (400) 參數{缺少的參數}缺失。
作業系統平台不支援 壞請求 (400) 作業系統平台(client OS Platform} 不支援此操作。
客戶端版本非支援 壞請求 (400) {請求的動作}在客戶端版本 {supported client version} 及以上時被支援。
未經授權 未經授權 (401) 未授權 (授權標頭無效或過期) 。
禁止 禁忌 (403) 禁止 (有效的代幣,但行動許可不足) 。
DisabledFeature 禁忌 (403) 租戶功能沒有啟用。
禁止操作 禁忌 (403) {被禁止的行動與原因}。
未被發現 找不到 (404) 一般未找到錯誤訊息。
資源未找到 找不到 (404) 找不到 Resource {the request resource}。
太多請求 請求太多 (429) 回應代表達到配額上限,無論是請求數還是 CPU 數。
InternalServerError 內部伺服器錯誤 (500) (沒有錯誤訊息,請重試操作 )

節流

當 HTTP 請求數在特定時間範圍內超過每個 API 允許的呼叫數時,HTTP 用戶端可能會收到「Too Many Requests 錯誤 (429) 」。

HTTP 用戶端應延遲重新提交更多 HTTPS 請求,並以符合速率限制的方式提交。 回應標頭中的 Retry-After 顯示 (在發出新請求前需要等待多久(秒數) )

忽略 429 回應或嘗試在較短時間內重新提交 HTTP 請求,會回傳 429 錯誤碼。

正體參數依大小寫區分

提交的正文參數目前依大小寫區分。

如果您遇到 InvalidRequestBodyMissingRequiredParameter 錯誤,可能是因為參數大寫或小寫字母錯誤所致。

請檢視 API 文件頁面,檢查提交的參數是否與相關範例相符。

關聯請求識別碼

每個錯誤回應都包含一個獨特的 ID 參數用於追蹤。

此參數的屬性名稱為「目標」。

在聯絡我們反映錯誤時,附上此識別碼有助於找出問題根源。

範例

{
    "error": {
        "code": "ResourceNotFound",
        "message": "Machine 123123123 was not found",
        "target": "43f4cb08-8fac-4b65-9db1-745c2ae65f3a"
    }
}
{
    "error": {
        "code": "InvalidRequestBody",
        "message": "Request body is incorrect",
        "target": "1fa66c0f-18bd-4133-b378-36d76f3a2ba0"
    }
}

提示

想要深入了解? Engage 與 Microsoft 安全性 社群互動,加入我們的技術社群:適用於端點的 Microsoft Defender Defender 技術社群