问题标签 [documentclient]

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 投票
0 回答
210 浏览

node.js - 存根 AWS Dynamodb documentClient 进行集成测试

我有一些问题存根这种依赖关系。我知道有一个 aws-sdk-mock 模块,但我的目标是用 sinon 和 chai 存根它。这是mi代码,

测试代码

连接到 dynamoDB 到存根

使用 DynamoDB 示例

我真的坚持这个问题,所以任何帮助都会很有用。我知道问题与 de documentclient 有关

谢谢您的帮助

0 投票
0 回答
169 浏览

javascript - 嵌套路径不存在时,DynamoDB 更新失败

我的表结构在下面,time唯一键在哪里,“01”是计数的 id,一个月的项目将在任何 id 获得该月的计数结果后立即创建。

我使用更新功能来保存计数结果:

如果 id 的结果已经存在,那很好。但如果没有,我会收到一条错误消息

如何让地图在更新数据之前构建好?我曾尝试使用SET if_not_exists(),但它会与我真正想要更新的路径重叠(计数数组)

0 投票
1 回答
355 浏览

node.js - 如何使用 documentClient 在 dynamodb 中按创建日期排序 asc

我只是想问你,我怎样才能收到按创建日期按 ASC 排序的最新项目。

如何使用 dynamodb documentClient 接收 3 个最新创建的项目?

谢谢你的帮助!

0 投票
2 回答
1196 浏览

node.js - Why "documentClient.put" is doing UPDATE instead of INSERT in DynamoDB?

I have a simple logic where I want to INSERT record in the table using AWS.DynamoDB.DocumentClient. Below is code which I am using. Here, I am noticing that .put is updating the record and not sure why.

While checking the logs in CW, I am not seeing any error so not sure what am I missing here.

Code:

0 投票
0 回答
382 浏览

amazon-dynamodb - DynamoDB 查询 ISO 日期

我是 Dynamo 的新手,一直在尝试查询数据库的范围。

在此处输入图像描述

我在我的 Lambda 中查询 ISO 日期字符串,如下所示:

但我没有得到该范围内的任何记录...

我已经搜索了几个小时......我无法弄清楚如何执行这个查询。

示例数据:

功能扫描范例:

0 投票
1 回答
53 浏览

node.js - 从 Lambda 函数写入 DynamoDB

设置:我正在尝试设置一个 Lambda 函数,该函数由来自 API 网关的 Web 套接字以及它订阅的 SNS 主题触发。根据传入的事件,我确定哪个服务发起了调用并相应地处理事情。

问题:我在理解如何使用 DynamoDB 方面遇到了一个真正的问题。建立 Web 套接字连接后,我将该连接 ID 插入到 Dynamo 中,以便在来自 SNS 的消息进入时对其进行响应。无论出于何种原因,我对 Dynamo 的所有调用都没有调用它们各自的回调。我假设他们失败了,但看起来没有抛出任何错误。我在这里调用“put”命令的方式有问题吗?

我的 index.js 顶部的代码是:

我处理 API Gateway 调用的方法是:

当我通过运行测试请求时,控制台日志会显示我所有环境变量的正确值(我授予 Lambda 函数对 dynamo db 的完全访问权限,所以我认为我的访问键值不是必需的,但我将它们放在那里只是因为我'此时正在尝试一切)但在我的 documentClient.put 调用之后没有记录任何内容,我认为从根本上不会调用 put 命令的回调。

我的 DynamoDB 有一个分区键:ConnectionId(这是我在那里唯一的值),没有 SortKey。

我对这一切都是新手,所以任何可以为我指明正确方向的帮助都会很棒。

先感谢您!

0 投票
0 回答
33 浏览

node.js - 使用 DynamoDB Doc Client 查询参数

我正在尝试为我的 DynamoDB 查询编写参数。我收到一个错误,我相信它来自这个查询。

错误信息:Invalid operator used in KeyConditionExpression: OR

有人可以让我知道我做错了什么吗?year、week 和 teamName 都定义为路径参数。

0 投票
1 回答
63 浏览

node.js - 我将如何使用 DynamoDB DocumentClient 重写此查询?

我正在控制台中测试查询,并希望在我的代码中实现它们。我很好奇如何在我的 Node.js 代码中得到这个。我认为这与它有关,QueryFilter但我很难得到它。

在此处输入图像描述

0 投票
1 回答
93 浏览

amazon-web-services - UpdateExpression:将其他属性的值添加到列表中

给定以下 DynamoDB 文档:

我的目标是更新此文档以获得以下结果:

我的请求参数如下所示:

这显然不起作用,因为[inlist_append会触发语法错误。
是否有任何解决方案可以实现这一目标,而不必在先前的请求中获取数据并将其手动添加到列表中?

0 投票
1 回答
914 浏览

node.js - 在 Node 中使用 DynamoDB.DocumentClient 检索 StringSet 值

JavaScript 类型之间的DynamoDB.DocumentClient自动编组和解组值是 DynamoDB 更具描述性的AttributeMap类型。但是,当使用具有StringSet属性的 Item 时,它似乎不会自动进行转换。

使用 向表添加StringSet属性时DocumentClient,我使用该createSet(...)方法将数组转换为 Set。取回值时, 的倒数是createSet(...)什么?直接访问 Set 的最佳做法是.values什么?如果是这样,是否记录在某处?

这是添加具有StringSet属性的项目的示例代码,然后检索该项目:

result.Item一个Set对象,而我希望它是我传入的同一个数组createSet(...)

如果有兴趣看到这个现场,这个 repo 有一个功能齐全的例子。 克隆它,npm install然后运行index.js,你会看到如下内容: