如何使用 node.js 从“AWS dynamodb”获取/扫描所有项目

2023-11-27

如何获取/扫描所有项目AWS dynamodb using node.js。我在这里发布我的代码。

var docClient = new aws.DynamoDB.DocumentClient();
    var params = {
    TableName:"users",
    KeyConditionExpression:"user_status=:status",
    ExpressionAttributeValues: {
        ":status": "Y"
    }
    };

    var queryExecute = function(callback) {
        docClient.query(params,function(err,result) {
            if(err) {
                console.log(err)
                callback(err);
                } else {
                console.log(result);

                if(result.LastEvaluatedKey) {
                    params.ExclusiveStartKey = result.LastEvaluatedKey;
                    queryExecute(callback);
                    } else {
                        callback(err,items);
                    }
                }
            });
        }
        queryExecute(callback); 

这给了我以下错误。

ValidationException: Query condition missed key schema element: `user_id`.

这里的主键是user_id。我不想将它与我的查询条件一起使用,因为如果我在中提到主键,我需要设置一个值KeyConditionExpression。也许我错了。但是,请建议我一种从以下位置获取所有项目的好方法dynamodb,这是有user_status = "Y"


这对我有用:

export const scanTable = async (tableName) => {
    const params = {
        TableName: tableName,
    };

    const scanResults = [];
    let items;
    do{
        items = await documentClient.scan(params).promise();
        items.Items.forEach((item) => scanResults.push(item));
        params.ExclusiveStartKey = items.LastEvaluatedKey;
    }while(typeof items.LastEvaluatedKey !== "undefined");
    
    return scanResults;
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 node.js 从“AWS dynamodb”获取/扫描所有项目 的相关文章

随机推荐

  • 使用 ReferenceEquals 的 IEqualityComparer

    有默认的吗IEqualityComparer
  • 可能有 ``a < b and not(a - b < 0)`` 带浮点数

    Is a lt b and not a b lt 0 由于浮点轮误差可能导致浮点吗 有例子吗 这个答案旨在作为对帕特里夏 沙纳汉已经给出的好答案的学究补充 这个答案涵盖了正常情况 在这里 我们担心的是您在实践中不太可能遇到的边缘情况 是的
  • “phpinfo():依赖系统的时区设置是不安全的......”[重复]

    这个问题在这里已经有答案了 在运行 Blue box FreeSwitch PBX 前端 的 php 安装脚本时 我收到有关时区故障的错误 然后我开始挖掘 我不确定此时发生了什么 但这是我所拥有的 我在 public html 目录中创建了
  • MS Access - 链接到另一个 Access 数据库中的查询

    如何链接来自另一个 MS Access 数据库的查询 我知道我可以轻松链接表格 但我不知道如何链接查询 该查询从许多我不想链接的表中获取数据 你可以这样做 SELECT RemoteQueryname FROM RemoteQuerynam
  • .NET WebClient.UploadValues 与 WebClient.UploadData

    我正在编写一个类库来在我控制之外的站点上执行操作 该网站正在接受表单帖子作为输入 谁能告诉我这两种方法除了上传数据的形式之外是否有区别 System Net WebClient UploadData Uri Byte System Net
  • scanf("%[^\n]s",a) 与 gets(a)

    有人告诉我 当用户输入字符串时不应使用 scanf 相反 大多数专家以及 StackOverflow 上的用户都使用 gets 我从来没有在 StackOverflow 上问过为什么不应该使用 scanf 而不是 gets 来处理字符串 这
  • C++ 循环遍历 Map

    我想迭代中的每个元素map
  • Mono 准备好迎接黄金时段了吗? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 有人在大型或中型项目中使用过 Mono 开源 NET 实现 吗 我想知道它是否适合现实世界的生产环境 它稳定 快速 兼容 足以使用吗 将项目移植到 Mono 运行时是否需要花费很多精力 或
  • 颤动相机插件

    我对 Flutter 和 Dart 都很陌生 我正在尝试使用相机插件了解事情是如何运作的 我找到的所有示例都有这部分 List
  • Galaxy S5 上的 FOCUS_MODE_CONTINUOUS_PICTURE 出现问题

    我正在开发一个使用相机预览和拍照的 Android 应用程序 我用FOCUS MODE CONTINUOUS PICTURE使用 Galaxy S4 发现对焦效果非常好 然而 在 Galaxy S5 上FOCUS MODE CONTINUO
  • iCarousel 停在用户选择的索引处

    EDIT 我正在制作一个像老虎机一样的应用程序 我补充道iCarousel对于槽对象 所以我有一个按钮可以旋转iCarousel 在我的 iCarousel 视图中 有两个插槽 Slot1 和 Slot2 下面是我的iCarouselVie
  • 使用 mongoose 切换数据库

    您好 有没有办法用 mongoose 切换数据库 我想我可以这样做 mongoose disconnect mongoose connect localhost db 但它不起作用我收到此错误 Error Trying to open un
  • NextJS TypeError:无法读取 null 的属性(读取“长度”)

    有人知道这个错误的原因吗 warn Fast Refresh had to perform a full reload Read more https nextjs org docs basic features fast refresh
  • 如何在 Chrome 上设置音频自动播放

    音频自动播放可以在 Mozilla Microsoft Edge 和旧版 Google Chrome 中使用 但不能在由于自动播放政策发生变化 Google Chrome 67 他们已阻止自动播放 直到满足链接博客文章中指定的特定会话条件
  • 从IP地址获取子网

    我正在尝试获取我拥有的 IP 地址的子网 Eg 1 子网掩码 255 255 255 0 Input 192 178 2 55 输出 192 178 2 0 2 子网掩码 255 255 0 0 Input 192 178 2 55 输出
  • CSS 粘性标题

    我在主页上添加了一个粘性标题 但是粘性标题似乎位于页面上其余内容的后面 因此当我向下滚动页面时 图像和文本位于标题顶部 有没有办法停止这个 这是我的代码
  • 每个 HTTP/会话请求的全局数据?

    问题 有没有办法在每个会话 http 请求中创建变量存储 该变量必须是全局可访问的 并且每个 HTTP 请求 连接 会话都不同 并且不需要在函数之间传递 例如 只是为了说明 setVariableThatCanBeAccessedByThi
  • 如何在 Eclipse 中更新我的 ADT?

    我尝试过更新我的 Eclipse 目前我的 Eclipse 中已经有 2 2 Android SDK 了 昨天我更新了我的 Eclipse 如下所示 Eclipse gt 窗口 gt Android SDK Manager gt 我已选中列
  • PHP 连接两个变量名

    我有一个 php 脚本 它得到 POST决定返回哪个数组 前任 n POST n 1 2 or 3 a1 array something something else another thing a2 array something 2 s
  • 如何使用 node.js 从“AWS dynamodb”获取/扫描所有项目

    如何获取 扫描所有项目AWS dynamodb using node js 我在这里发布我的代码 var docClient new aws DynamoDB DocumentClient var params TableName user