gpt4 book ai didi

node.js - AWS + API 网关 + Lambda + Node.js actions-on-google ApiAiApp

转载 作者:太空宇宙 更新时间:2023-11-03 22:26:17 25 4
gpt4 key购买 nike

我想使用 action-on-google 软件包和 ApiAiApp我的 Lambda 函数中从 API 网关调用的类。所有管道工作正常,我可以很好地返回手动构建的响应,但我真的更喜欢在我的 Node.js Lambda 函数中使用 ApiAiApp 对象。

我还可以使用 Firebase 托管该函数使其正常工作。

请原谅我对此类开发的无知,但似乎没有任何搜索方式可以为我提供所需的解决方案。

Firebase 的入口点是

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

我可以将请求+响应传递给 ApiAiApp 构造函数,一切都很顺利

与 Lambda 中的情况相同

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

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

TL:DR - 如何在 Lambda 函数中调用 actions-on-google ApiAiApp 构造函数?

最佳答案

看起来你可以使用awslabs/aws-serverless-express创建 ApiAiApp 期望的类似 Express 的请求/响应对象。

呃,这看起来不像我一开始想象的那么有用。看起来更像是你想做一些类似模拟 Express 的结果/响应之类的事情。我看到了一些与此相关的模块( lykmapipo/mock-express-response )。

您可以按照显示的方式设置 API-网关集成 here ,这会给您请求。那么你的羔羊可能看起来像这样:

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());
};

我不知道,无论哪种方式都能让你的船漂浮。诚然,我对 APIAiApp 或在 Lambda 中运行 Express 一无所知,我的羔羊都是 API 的东西,而不是面向用户的。

关于node.js - AWS + API 网关 + Lambda + Node.js actions-on-google ApiAiApp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45850735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com