问题标签 [aws-sdk-nodejs]

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 回答
355 浏览

node.js - Aws Cognito 联合身份在 getOpenIdTokenForDeveloperIdentity() 上未找到 UnknownError 的答案

我在 aws lambda(环境 nodejs6.10)中遇到问题,试图将用户注册为自定义提供程序。我在后端调用 getOpenIdTokenForDeveloperIdentity ,使用以下参数:

负责调用的代码很简单:

不幸的是,来自 Cognito 的答案是这个错误:

2 年前我用几乎相同的代码完成了这项工作,并且仍在工作,但在这个项目中它不是。我为未经身份验证的用户制作了一个小型 Web 客户端,它与 Cognito 配合得很好,所以我假设 cognito 设置正确。cognito 和 lambda,us-east-1 的区域相同。角色和政策似乎是正确的,lambda 有权使用 Cognito Identity 执行所有操作。我现在不知道该怎么办,只是想如果不能解决这个问题就离开 cognito。请帮忙。

信息的其他相关部分:我使用的是无服务器框架,但 cognito 身份池是手动创建的(角色相同)。

Lambda 允许的权限:

代码初始化

0 投票
1 回答
3103 浏览

amazon-web-services - 如何在 AWS Lambda 上创建 EC2 时将脚本传递给 UserData 字段?

我正在尝试在由 AWS Lambda 创建的新 EC2 实例的 Userdata 字段中传递一个脚本(使用适用于 Javascript 的 AWS SDK,Node.js 6.10):

我尝试了几件事,例如: - 创建一个字符串并将字符串传递给 UserData - 不工作 - 创建一个字符串并将其编码为 base64 并将字符串传递给 UserData - 不工作 - 粘贴 base64 编码的字符串 - 不工作

您能帮我理解如何在 UserData 中传递脚本吗?AWS SDK 文档有点缺乏。

是否也可以将放在 S3 存储桶中的脚本传递给 UserData?

0 投票
0 回答
614 浏览

node.js - Sinon 存根和测试 AWS-SDK 承诺

//待测类

// 测试类

我的问题是关于Sinon 的callsWithArgs 方法和promise 的aws-sdk。我的问题是,我如何测试这个调用是否使用正确的参数并按预期返回一个承诺。就目前而言,测试失败并出现异常:

TypeError:索引 1 处的参数不是函数:未定义

0 投票
0 回答
308 浏览

amazon-web-services - 从大型 S3 存储桶中获取对象子集?

我有一个包含数千个文件的大型 S3 存储桶。当需要文件时,我知道密钥,而且总是只有其中的几个,最多可能是 50 个。文件很小,每个1KB。

从用 Node.js 编写的 Lambda 函数中获取它们的最佳方法是什么?

我正在考虑类似以下虚构代码的内容:

我总是可以循环 AWS.S3.getObject() 但是,有更好的方法吗?

0 投票
2 回答
1480 浏览

node.js - 来自 Lambda 的 AWSXRay.captureAsyncFunc() - 我错过了什么吗?

我正在尝试获取自定义 X 射线分段报告,但在跟踪中没有看到任何内容。我的代码看起来像这样:

我需要将它添加到父段还是什么?

0 投票
0 回答
59 浏览

amazon-web-services - 如何在 aws js-sdk 中使用通配符存储桶键获取对象

我使用ceph来存储我的对象。我只是从其他资源下载文件并将其存储在ceph唯一的文件名和原始后缀中。如果我可以在没有后缀的情况下检索对象,我会徘徊,例如:

0 投票
1 回答
2703 浏览

node.js - 从 AWS Lambda Node.JS 流式传输并压缩到 S3

我的目标是创建一个大的压缩文本文件并将其放入 S3。

文件内容由我从另一个来源循环读取的块组成。

由于此文件的大小,我无法将所有数据保存在内存中,因此我需要以某种方式同时将其直接流式传输到 S3 和 ZIP。

我了解如何使用fsNode.JS 中的常规执行此技巧,但我很困惑是否可以使用 AWS Lambda 中的 S3 执行相同的技巧?我知道s3.putObject 可以消费 streamObject,但在我看来,当我执行操作时,这个流应该已经完成putObject​​,什么会导致超出允许的内存。

0 投票
0 回答
634 浏览

aws-lambda - lambda 在响应中返回空白有效负载

我正在调用 lambda 函数,例如

response.StatusCode200,但是当我检查时response.Payload,它总是空白。

我的 lambda 函数只有context.succeed("Hello")

用过aws-sdk的 npm

0 投票
1 回答
4155 浏览

docker - 如何允许访问 EC2 实例上的 docker 容器

我有一个看起来像这样的构建过程:

1. 推送到 BitBucket 的代码,由 BitBucker Pipelines 拾取

2. BitBucket Pipelines 从 repo 中的 Dockerfile 构建 Docker Image 并将其推送到 Amazon ECR

3. Jenkins作业监视ECR中的新镜像并远程触发EC2实例拉取并重启docker镜像

问题

到目前为止 - 一切正常!我的 docker 容器正在 ec2 实例上运行。不起作用的是我无法接收任何连接。即使从 ssh 进入 ec2 实例,curl http://localhost:5000也无法正常工作。通过公共 ip 或公共主机从浏览器访问 ec2 实例也不起作用。

IP 表

系统控制

Docker 中的节点服务器最后一行输出

0 投票
1 回答
187 浏览

node.js - 从 zip 导出到 lambda 函数不会获取睡眠模块

我有一个 nodeJs 脚本,想在执行过程中休眠。

我创建了一个本地 npm 包和一个项目。项目目录如下。

我已压缩 node_modules 和 index.js 并将它们压缩为 index.zip

node_modules 包含以下内容

当我在本地执行脚本 index.js 时,它运行良好,如下所示。

但是当我将 zip 导出到 lambda 函数时,执行失败并显示消息

index.js 的内容如下

我不确定我还缺少什么。