2017-07-19 41 views
0

當我測試通過AWS網關我LAMBDA,我可以看到記錄此行:AWS網關總是返回默認狀態代碼

Wed Jul 19 20:06:11 UTC 2017 : Method response body after transformations: {"errorCode":0,"headers":{},"statusCode":567,"base64Encoded":false} 

正如你可以看到我回來的567狀態碼。但是,我總能看到200:

enter image description here

然後,這是我在合併響應配置:

enter image description here

我使用的REG EXP * 「的StatusCode」:567。 *,但它與{「errorCode」:0,「headers」:{},「statusCode」:567,「base64Encoded」:false}不匹配。

這些都是方法迴應部分我的HTTP狀態代碼:

enter image description here

我不能讓其他的回報比200。我試圖改變默認的是567,而不是200返回567路。所以看起來像我的設置使我的API返回總是的默認響應。

有沒有人知道我做錯了什麼?

+0

我不確定567是否有效。 – dashmug

+0

嘗試使用lambda代理而不是lambda-集成。這樣,您可以在您的lambda函數中構建您的響應,而不是在API網關模板中構建。 – dashmug

+0

是否有你的errorRegexes。*?這覆蓋了默認的狀態碼邏輯。 –

回答

1

嘗試使用lambda-代理而不是lambda-集成。

這樣,您可以在您的lambda函數中構造您的響應,而不是在API網關模板中構建您的響應。

在我看來,處理代碼中的響應比使用API​​網關模板更容易。