问题标签 [serverless-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
614 浏览

node.js - microsoft bot 框架端的回调

我正在使用带有 nodejs 的 Microsoft Bot 框架开发一个聊天机器人,我想使用无服务器框架在 aws lambda 上部署它,但要做到这一点,我需要调用 lambda 回调。

我找不到在处理消息结束时如何进行回调(保存数据并发送所有必要的消息)。

我试图模拟响应,并调用回调,但它没有工作,微软 bot 框架继续处理消息,这是我当前的处理程序

这是我的 channel.js

0 投票
4 回答
14045 浏览

node.js - 在 Windows 10 上安装 serverless 后,我无法在命令提示符下运行“serverless”

我安装了 NodeJS,它似乎工作正常。运行 npm 运行良好,我可以安装软件包。然后我跑了

这也运行良好。但是当我尝试运行时:

在 windows 命令提示符下,我收到有关找不到命令的错误。

我已将答案包括在下面。

0 投票
1 回答
10911 浏览

aws-lambda - 如何使用事件将 json 输入传递给在无服务器中部署的 Cron 计划 Lambda?

我一直在尝试在无服务器中部署一个 Lambda,以按每小时调用它的 Cron 计划运行。当它被调用时,我希望 Lambda 中的事件由我自己的 JSON 输入而不是来自 Cron 事件的信息填充,这是部署时的默认输入。

在 AWS 控制台中,我可以手动进入 Lambda 的 Cron 触发器,并将输入从“匹配事件”更改为“常量(JSON 文本)”,以获得我想要的结果。由于 Serverless 在部署 Lambda 时会创建此规则,我觉得应该有某种方法可以通过 serverless.yml 文件中的配置更改输入。在搜索无服务器的文档时,我找不到任何东西,所以现在我想知道在当前状态下通过无服务器是否可以做到这一点,如果可以,该怎么做。

任何意见,将不胜感激。

编辑:有一个更新应该添加了这个功能,但是我仍然无法使用无服务器 1.3.0 使用 JSON 的计划进行部署(并且还使用 1.2.0 进行了测试)。我使用的 serverless.yml 的一些示例如下:

从 1.3.0 开始,是否有人能够评论 Serverless 中此功能的状态,以及我上面的 serverless.yml 是否看起来不错?

编辑 2:发布工作 serverless.yml

0 投票
0 回答
239 浏览

python - 使用 Lambda 从 S3 加载非字符串对象以执行计算

我正在测试开发如何使用 Lambda 和 S3 以及其他可能的 AWS 服务来创建 Web 服务。

背景是使用使用Gensim构建的LDA模型来分析S3中存在的文本文件。目标是使用 Lambda 的事件触发器来自动分析上传到 S3 存储桶中的文本。

到目前为止,我已经尝试在 Lambda 中创建简单的函数来打印和记录上传到 S3 存储桶的项目属性。然而,分析是一个问题,因为需要 LDA 模型来执行分析。

我可以通过调用以下键来提取 S3 中的对象:

然而,这使得数据变量为字符串。我需要提取元数据,以便将其加载到模型对象中。所以更多的风格是:

第一:这可能吗?将 200-300mb 左右的模型文件加载到 Lambda 的内存中以执行任务?

第二:由于应该为每个文件重复调用此任务,我的逻辑告诉我找到将模型存储在持久内存中以节省获取时间的方法......是否可以在其他地方进行更有效的对象传递?

PS 执行分析所需的参数是:模型、wordid dict、需要分析的实际文本。

任何帮助将不胜感激,如果有更好的选择,那也将非常棒。

谢谢。

0 投票
1 回答
1996 浏览

amazon-dynamodb - DynamoDB/CF - 超出订阅者限制:只能同时创建、更新或删除 10 个表

当我遇到以下错误时,我试图使用 serverless.yml 创建 24 个 DynamoDB 表。我该如何规避这个?

这似乎是 Cloudformation 的一个普遍问题,这是 AWS 论坛中的一种解决方法:https ://forums.aws.amazon.com/thread.jspa?threadID=167996

我尝试添加dependson,但仍然无法解决问题。

我收到以下错误

加上DependsOn: "DevPolicyTable"引号也没有任何区别

0 投票
1 回答
69 浏览

node.js - 更改无服务器工件内的路径

我的“拓扑”是:

我有一个非常适合无服务器的项目——node/lambda。根据需要管理设置阶段和配置,但有一个例外。

我们在项目根目录中使用 config.cfg 进行本地测试,其中包含阶段内的 app.js 和配置文件,用于那些尊重的配置。

一种方法是将本地配置移动到另一个文件中,然后在打包之前使用 shell 脚本将目标配置复制到项目根目录中。

是否可以指定路径,以便无服务器从目录中获取 config.cfg 并以某种方式将其打包到“项目根目录”中?

谢谢你。

0 投票
2 回答
808 浏览

node.js - 带有 Lambda 的蓝鸟不返回数据

我们有一个简单的查询来使用部署在 nodejs 上的无服务器应用程序从我们的数据库中获取信息。不幸的是,我无法从 Bluebird 的承诺中得到任何回复——回复总是超时,我不确定是什么导致了这个问题。以下是我的文件:

无服务器.yml:

处理程序.js:

dbConn.js:

我添加了控制台日志条目,我可以看到它完成了它们......但是它没有返回任何内容,并且最终出现连接错误。我看到数据已获取,而 Lambda 只是坐在那里 6 秒内没有返回任何内容。以下是来自 Cloud Watch 的最新条目:

18:15:01 开始请求 ID:195a7218-a516-11e6-b52d-5f028bb2bdf6 版本:$LATEST 18:15:01 2016-11-07T18:15:01.820Z 195a7218-a516-11e6-b52d-5f028bb2bdf6 找到角色: :15:07 END RequestId: 195a7218-a516-11e6-b52d-5f028bb2bdf6 18:15:07 REPORT RequestId: 195a7218-a516-11e6-b52d-5f028bb2bdf6 持续时间: 6002.14 ms 计费持续时间: 6000 ms 最大内存使用量: 1024 : 18 MB 18:15:07 2016-11-07T18:15:07.468Z 195a7218-a516-11e6-b52d-5f028bb2bdf6 任务在 6.00 秒后超时

将 Bluebird 与 Lambda 一起使用时有什么问题吗?

0 投票
1 回答
658 浏览

node.js - Proper request template mapping or process in order to upload a photo to s3 using Serverless Framework

I am using Serverless Version 1.0.0 and Node Version 5.7.1

I have an endpoint for updating a photo of a table in a mysql database. So prior to inserting the said photo, i am uploading the formdata i get from the browser to s3, and then update the photo url using the return image url.

The problem is i don't know what is the proper way to define the request mapping template in serverless.yml so that i could extract the photo, AND the path parameters AND the $context variable for the principal id

Here is my current serverless.yml function definition

Now here is the handler i have:

Attempt 1

I tried to use WHEN_NO_TEMPLATES passthrough option, and defined no template but i only get the photo buffer input variable, and no boardId. BUT i successfully upload the photo to s3.

isOffline: true, stageVariables: {} }

Attempt 2

Using the ff request definition:

I see no variables in my event variable at all! No photo, nor boardId.

Can anyone tell me what i'm doing wrong? I am using postman to test.

0 投票
1 回答
5828 浏览

amazon-web-services - 将现有 API 密钥与 AWS 中的无服务器框架结合使用

在该serverless.yml文件中,您可以指定 API 密钥的名称以与已部署 API 中的函数一起使用。您列出 API 密钥名称,然后将您希望使用它保护的方法标记为私有。例如:

部署后,框架会生成 API 密钥并将其分配给函数。即使环境中已经存在同名的密钥,它也会生成密钥。

有没有办法指定现有的 API 密钥,而不是让框架生成它?我们真的希望继续生成与部署分开的密钥。

0 投票
1 回答
1435 浏览

amazon-web-services - 将 lambda 部署到多个区域的无服务器 yml 文件中的语法是什么?

我需要将我的 lambda 工件部署到 3 个不同的区域。我正在使用无服务器框架。我的 .yml 文件如下所示: