我正在尝试将此处找到的Webhook Example for Google Actions部署到Lambda AWS。
我使用ngrok成功部署和发出POST调用。所以,那里没有问题。
但我发现的问题是它使用Express节点模块进行POST请求调用。当向Express模块发出请求时,Lambda AWS失败。那么有没有办法使POST调用成功。
我尝试使用Lambda-Express节点模块来部署它,但它似乎也有一些问题。
答案 0 :(得分:2)
Lambda AWS不直接支持HTTP接口。
一种解决方案是使用API Gateway,允许您将AoG发送的HTTPS POST转换为对AWS Lambda的调用。
在lambda中,您将通过标准的Lambda处理程序处理请求:
function( event, context, callback );
而不是通过Express。您可能还希望从代码中删除Express,这可能听起来像是很多工作,但我在发布时对其进行了简要介绍,并且我的印象是对Express的依赖很小且非常不必要。
另一种选择是从Lambda切换到像Google App Engine这样基于HTTP的东西,这也是无服务器(在某种程度上)。我想这可能会更容易,但我不知道你的其他因素可能是什么。