使用 SDK 的 DynamoDB PartiQL 分页

问题描述

我目前正在使用 JS AWS-SDK 的 executeStatement 在 DynamoDB 中使用 PartiQL 进行分页,但我返回的对象不包含用于分页的 NextToken(仅 Items 数组)。 代码如下(非常简单):

const statement = `SELECT "user","id" FROM "TABLE-X" WHERE "activity" = 'XXXX'`;
const params = {Statement: statement};
try {
    const posted = await dynamodb.executeStatement(params).promise();
    return { posted: posted };
} catch(err) {
    throw new Error(err);
}

我想知道是否有人使用 PartiQL for DynamoDB 处理过分页

这可能是因为我的分区键是字符串类型?

仍在努力弄清楚。

谢谢,提前!

解决方法

事实证明,如果您想要 NextToken,请勿使用适用于 JavaScript 的 AWS 开发工具包的第 2 版。 使用版本 3。版本 3 将始终返回 NextToken,即使它未定义。

从那里您可以确定您的限制等(在您实际获得 NextToken 之前的默认限制是 1MB)。您需要查看 dynamodb v3 execute statement method

您也可以查看dynamodb paginators,我从未使用过,但打算学习。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...