AWS + API网关+ Lambda + Node.js操作对谷歌ApiAiApp

我想在API网关调用的Lambda函数中使用action-on-google包和ApiAiApp类。 所有的pipe道工作正常,我可以返回一个手动构build的响应罚款,但我真的更喜欢在我的Node.js Lambda函数中使用ApiAiApp对象。

我也可以使用Firebase来正常工作。

请原谅我对这种发展的无知,但是没有一种search方式似乎给了我需要的解决scheme。

Firebase的入口点是

exports.myTip = functions.https.onRequest((request, response) => { 

我可以将请求+响应传递给ApiAiApp构造函数,而且都很好

就像在Lambda中一样

 exports.handler = function(event, context, callback) 

如何将事件转换为请求+响应,以便在lambda函数中调用相同的ApiAppApp构造函数?

TL:DR – 我如何在Lambda函数中调用对ApiAiApp构造函数的操作?

似乎可以使用awslabs / aws-serverless-express来创buildApiAiApp期望的类似Express的请求/响应对象。

呃,那个起初看起来并不像我想的那样有用。 看起来更像是你想要做类似快车般的结果/回应。 我看到一些模块( lykmapipo / mock-express-response )。

你可以设置你的API-网关集成如何显示在这里 ,这给你的要求。 那么你的羔羊可能看起来像这样:

 const MockExpressResponse = require('mock-express-response'); exports.handler = (event, context, callback) => { const response = new MockExpressResponse({ request: event, }); const app = new ApiAiApp({ request: event, response }); // do stuff with app callback(null, response._getString()); }; 

Idk,永远漂浮你的船。 不可否认的是,我不知道有关APIAiApp或在Lambda上运行Express,我的小羊都是API的东西,而不是面向用户。