问题标签 [aws-sdk-js]

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

javascript - 用于在 WAF 中创建/删除条目的 AWS Lambda 函数

我正在尝试编写一个基本逻辑来创建 WAF 条目(这将阻止一个 IP 地址或一组 IP 地址输入),然后将它们删除。

我目前正在这样做

所以在这里我想为jail和填写代码bail(阻止/释放一个IP地址或一组地址)

我浏览了这个AWS nodejs docs。但是如何实现它是如此令人困惑。更具体地说,如何以最佳方式实施它。我只是在寻找两个 API,一个我会传递 ip 地址并阻止它,另一个释放它。

我有一些来自上述文档的基本问题

  1. 我如何传递IP地址?在哪个 API 中?
  2. 是否会aws.WAF自动将一组 IP 地址分组到 IPSet 中?
  3. 是否aws.WAF也保持命中计数,我在课堂上做的类似的事情Police
  4. 我是否需要为要添加/删除到阻止列表中ChangeToken每个内容进行获取? IPaddress或者我可以拥有一次并永远使用它吗?

对于这个确切的要求,我很高兴有一个示例代码(最好是在 javascript 中)。如果我填写了我的jail和代码,我会很高兴。bail

0 投票
2 回答
19905 浏览

json - 解组 DynamoDB JSON

通过 DynamoDB流事件给定一些DynamoDB JSONNewImage,我如何将其解组为常规 JSON

通常我会使用AWS.DynamoDB.DocumentClient,但是我似乎找不到通用的 Marshall/Unmarshall 函数。

旁注:我是否会丢失任何将 DynamoDB JSON解组为 JSON 并再次返回的内容?

0 投票
1 回答
339 浏览

authentication - AWS Cognito 联合身份池自定义身份验证提供程序退出/注销问题

我正在使用 nodejs lamdas 从 AWS Cognito 获取身份验证令牌,在前端代码中我使用的是 "aws-sdk": "^2.74.0" javascript / typescript sdk:

当我通过以下方式将令牌和身份 ID 签名到我的 AWS.CognitoIdentityCredentials.params 时:

我能够获得以下 lamda.invoke 调用,以使用为我的联合身份池配置的经过身份验证的角色 arn。我遇到的问题是当我尝试注销用户时。我阅读了许多论坛帖子,但似乎没有人对此有明确的解释。我尝试在前端注销功能中使用以下内容,但没有帮助:

任何显示 javascript aws-sdk 如何清除会话/身份验证信息并切换回未经身份验证的用户角色 arn 或注销用户并更新配置的示例,以便下次调用 AWS 服务(在我的情况下为 lambda.invoke)将使用未经身份验证的角色 arn 而不是尝试使用经过身份验证的角色。所以看起来 Cognito 不知道 sigout,或者我错过了让它知道的电话。我希望 creds.clearCachedId() 会这样做,但显然不是。

0 投票
1 回答
1789 浏览

amazon-web-services - 为什么我的 Lambda 函数没有在 AWS 状态机上开始执行?

我已经设置了一个 AWS Step Function 状态机,它链接了 3 个 lambda 函数,并且在我手动创建执行时运行得非常好。我创建了第四个 lambda 函数来从 API Gateway 获取输入,将我想要的内容传递给 Step Function 并开始新的执行。

我相信我已经遵循了我可以在网上找到的所有建议,但无论我尝试了什么,Lambda 函数似乎总是超时(无论是从 API Gateway 调用还是自行测试),我得到了CloudWatch 中没有任何错误可言,即使我已将 console.log 行移至函数中的几乎每个点。似乎该stepfunctions.StartExecution行实际上从未被调用过,但该函数也从未返回(无论回调是否在 stepfunction 块内),所以我只能用头撞桌子。

这是 Lambda 函数:

此外,Lambda IAM 角色拥有对 AWS Step Functions 的完全访问权限,因此我认为那里没有问题。

0 投票
3 回答
4186 浏览

node.js - 如何在 AWS js SDK 中配置区域?

我的问题

我正在编写一个简单的 js 函数,它从 AWS CloudWatch Logs 读取一些信息。

按照在 Node.js AWS SDKAWS nodejs SDK 文档中配置区域的答案,我想出了以下内容:

代码

输出和错误

环境

代码在本地运行node v8.1.2

我的问题

如何在 AWS js 开发工具包中正确配置区域?

附录

在github上打开了一个问题并得到了一些回复。

0 投票
1 回答
864 浏览

amazon-web-services - 如何接收来自 AWS S3 触发的 lambda 函数的响应?

我目前有一个设置,我的移动前端执行 AWS s3 上传图像。s3 上传会触发一个 AWS lambda 函数,该函数启动一个执行各种作业和操作的 AWS 步进函数(状态机)。

我正在寻找最好的(也是最省时的)方法来将步进函数结束时的输出返回到移动设备。

一种方法是监视executionARN状态机,并在完成后获取数据。这似乎是 awslabs lambda-refarch-imagerecognition implementation here的情况。但是,我的前端是在移动设备上,我宁愿不必发送和接收许多请求来检查状态机是否完成。

另一种可能的解决方案是重构流程,使 s3 上传成为独立事件,一旦成功,就向触发 step-function 的 AWS API 网关发出 API 请求。然后 API POST 请求将返回响应。这里的问题是应用程序必须等待 s3 响应才能继续启动状态机。

有没有更好的方法来执行这个序列并接收响应。理想情况下,s3 上传将返回来自状态机的完整响应。这样就有一个请求(图像上传)和一个响应。

0 投票
2 回答
4565 浏览

node.js - 删除并创建 dynamoDB 表

使用 node.js 我尝试再次删除并创建 dynamoDB 表。我需要从表中删除所有记录并添加新记录,所以我认为删除并重新创建整个表是一个很好的解决方案。我尝试使用此代码

我得到错误 ResourceInUseException:表已经存在:

0 投票
1 回答
1728 浏览

javascript - 如何使用纯 Javascript(无节点)下载 S3 对象数据

所以我使用 AWS Javascript SDK 到 S3 对象,使用这种方法:

http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#getObject-property

调用成功完成,但它只显示带有字符串的对象数据。

如何仅使用纯 Javascript 从浏览器下载此文件?

0 投票
3 回答
3851 浏览

node.js - 如果我已经拥有 aws-sdk (javascript),是否需要 amazon-cognito-identity-js?

我有一个使用 aws-sdk 的 javascript 项目。不,我想使用amazon-cognito-identity-js。在页面上它说:

请注意,适用于 JavaScript 的 Amazon Cognito AWS 开发工具包只是 AWS Javascript 开发工具包的精简版本,命名空间为 AWSCognito 而不是 AWS。它仅引用 Amazon Cognito 身份服务。

实际上,例如,我可以使用以下命令创建 CognitoIdentityServiceProvider:

但是我怎么想像验证用户一样呢?根据amazon-cognito-identity-js文档:

但是 CognitoIdentityServiceProvider 对象没有 AuthenticationDetails 属性。

当我使用 aws-sdk 而不是 amazon-cognito-identity-js 时,我是否必须做一些不同的事情?

还是我的假设是错误的,我需要 aws-sdk 和 amazon-cognito-identity-js?

0 投票
1 回答
1125 浏览

javascript - 如何在 aws-sdk DocumentClient 构造函数中传递 httpOptions?

当我将应用程序部署到 AWS 时,我遇到了严重的 aws-sdk 性能问题。我正在使用它,如下所示:

我研究并发现 - https://github.com/aws/aws-sdk-js/issues/900 - 我们可以在 aws 中指定 httpOptions 以便启用 keepAlive。

我的问题是,如何在上面的 AWS-sdk 构造函数中指定 httpOptions:

});

如何将其添加到包装器配置中。它不接受 AWS.config.update 中任何额外的 httpOptions 键