我試圖讓我的API-網關地圖應用程序/ X WWW的形式,進行了urlencoded使用此解決方案,以JSON參數傳遞給AWS LAMBDA: How to pass a params from POST to AWS Lambda from Amazon API Gateway如何從POST從亞馬遜API網關
但到目前爲止,我的lambda成功觸發了我的request.body始終爲空。如果有人知道如何處理.net-core c#我真的很感謝洞察力。
這是我的無服務器lambda表達式是什麼樣子到目前爲止,我收到關於request.body時間戳,但沒有
public async Task<APIGatewayProxyResponse> Post(APIGatewayProxyRequest request, ILambdaContext context)
{
var webHook = new WebHookClient("https://{urlHiddenForObviousReasons}");
var body = new BodyModel
{
Content = $"Trigger @ {DateTime.UtcNow}, {request.Body}"
};
await webHook.PostMessage(body);
var response = new APIGatewayProxyResponse
{
StatusCode = (int)HttpStatusCode.OK,
Body = "Alert received.",
Headers = new Dictionary<string, string> { { "Content-Type", "text/plain" } }
};
return response;
}
請注意,如果我使用代理服務器集成,而不是形式的值傳遞,我想使用映射,所以我可以有兩個客戶端使用不同的post方法相同的API,並讓lambda只解析json。以這種方式結束傳遞表單值的設置示例:key = 1 & steamid = 1 & notetitle = ARK-ALARM%3A + 06%2F17 +%40 + 16%3A24 + on +舊石器+方舟+ + + +島%2C + ALARM + '基地' + IN + '的+隱+湖' +是+跳閘! &消息= ...
您是否嘗試過使用CW日誌來調試API GW映射/處理?如果您在API GW控制檯中使用「測試」功能,則可以看到具有完整日誌記錄輸出的dryrun請求,以便您可以看到實際的原始請求正在對Lambda執行,並且還會在執行映射模板之前/之後看到請求主體。 –