選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 API Gateway API 處理 Lambda 錯誤

焦點模式
使用 API Gateway API 處理 Lambda 錯誤 - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

API Gateway 會將所有調用和函數錯誤視為內部錯誤。如果 Lambda API 拒絕調用請求,則 API Gateway 會傳回 500 錯誤代碼。如果函數執行但傳回錯誤,或傳回格式錯誤的回應,API Gateway 會傳回 502。在這兩種情況下,API Gateway 的回應主體為 {"message": "Internal server error"}

注意

API Gateway 不會重試任何 Lambda 調用。如果 Lambda 傳回錯誤,API Gateway 會將錯誤回應傳回至用戶端。

下列範例顯示導致函數錯誤和 API Gateway 傳回 502 的請求的 X-Ray 流程圖。用戶端會收到一般錯誤訊息。

透過 API Gateway 處理函數錯誤的流程圖。

若要自訂錯誤回應,您必須在程式碼中發現錯誤,並以必要的格式格式化回應。

範例 index.mjs - 格式錯誤
var formatError = function(error){ var response = { "statusCode": error.statusCode, "headers": { "Content-Type": "text/plain", "x-amzn-ErrorType": error.code }, "isBase64Encoded": false, "body": error.code + ": " + error.message } return response }

API Gateway 將此回應轉換為具有自定義狀態碼和主體的 HTTP 錯誤。在流程圖中,函數節點是綠色的,因為它會處理錯誤。

透過 API Gateway 處理格式化錯誤的流程圖。
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。