dynamodb.put().promise() 不返回 put 对象

2023-12-22

我正在尝试利用 aws 和 dynamo db 的异步/等待功能。下面是如何在 async wait 之前放置对象的示例,正​​如您在回调中看到的,您可以访问包含放置对象的数据。然而,在使用 async 和 Promise 的第二个代码块中,结果是一个空对象,有什么想法吗?

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GettingStarted.NodeJs.03.html https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GettingStarted.NodeJs.03.html

无承诺版本

var docClient = new AWS.DynamoDB.DocumentClient();

var table = "Movies";

var year = 2015;
var title = "The Big New Movie";

var params = {
    TableName:table,
    Item:{
        "year": year,
        "title": title,
        "info":{
            "plot": "Nothing happens at all.",
            "rating": 0
        }
    }
};

console.log("Adding a new item...");
docClient.put(params, function(err, data) {
    if (err) {
        console.error("Unable to add item. Error JSON:", JSON.stringify(err, null, 2));
    } else {
        console.log("Added item:", JSON.stringify(data, null, 2));
    }
});

Promise 异步版本 - 假设包装函数被标记为异步

var docClient = new AWS.DynamoDB.DocumentClient();

var table = "Movies";

var year = 2015;
var title = "The Big New Movie";

var params = {
    TableName:table,
    Item:{
        "year": year,
        "title": title,
        "info":{
            "plot": "Nothing happens at all.",
            "rating": 0
        }
    }
};
const result: any = await dynamoDb.put(params).promise()
console.log(result) 

根据doc https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB.html#putItem-property你必须使用ReturnValues如果你想要回一些东西。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

dynamodb.put().promise() 不返回 put 对象 的相关文章

随机推荐

  • GROUP BY 子句中不允许使用 Sql Server XML 方法

    我只是发出一个组 在其中指定 xml 数据 然后出现错误GROUP BY 子句中不允许使用 XML 方法 这是我的sql SELECT HourSheetID MAX RowID 1 as RowID XMLData value Log E
  • 在 Java 桌面应用程序中使用 Firebase Admin(使用 Eclipse)

    我想在我的 java 应用程序中使用 firebase admin 在网站上它说我可以通过 gradle 或 maven 添加它 但我不想那样做 相反 我从 Maven 中央存储库网站下载了 jar 文件 并将其作为库添加到我的项目中 我添
  • 使用动态类型调用通用扩展方法[重复]

    这个问题在这里已经有答案了 我正在尝试执行一个返回类型 T 的对象的扩展方法 但我正在尝试基于标题 详细信息动态泛型类型使类型 T 动态化 这可能有点冗长 using System using System Collections Gene
  • CXF 和 JAX-WS 之间的区别

    我对网络服务还很陌生 我无法找到 JAX WS 和 CXF 之间的区别 根据我的理解 JAX WS是java提供的规范 CXF是实现 如果我错了 请纠正我 是的你是对的 JAX WS 是基于 SOAP 的 Web 服务的 Java 规范 C
  • iOS OpenGL ES - 模拟器和设备上的不同纹理行为

    我正在使用 OpenGL ES 加载纹理 下面是我的代码 该图形由 2 个相同大小的纹理 停止按钮和后面的蓝色发光组成 下面的第一张图是使用 xCode 中的 iPad 模拟器拍摄的 第二张图是在实际设备上拍摄的 第一个图形是我从 Illu
  • Svelte:以可重用的方式关联标签和输入

    我正在构建一个 Svelte 输入组件 该组件应该在同一页面上多次使用 div div
  • Google 新的 reCaptcha 网站验证未返回任何响应

    I do 现场验证 https developers google com recaptcha docs verify得到后g recaptcha response通过用户验证 我发送带有参数的 xhr POST 并得到 200 OK 但没
  • 如果列 A 有子字符串则绘图

    我需要在 gnuplot 中执行此操作 plot 1 4 where col 2 P1 col 3 3 col 1 has substring blur1 这是一个数据集 col 1 col 2 col 3 col 4 gcc blur1
  • 如何在 Android 中通过蓝牙发送十六进制值

    我想通过蓝牙 SPP 在 android 中发送十六进制字符串 我试过这个 输出 sock getOutputStream String myHexString Integer toHexString 80 Integer toHexStr
  • 如何将文件夹中的所有文件作为模块导入并将所有文件导出为对象? [复制]

    这个问题在这里已经有答案了 我试图将每个文件导出为某个文件夹中的模块 然后将其作为单个对象导入 我该怎么做 我制作了一个带有很长的单个文件的 JavaScript 插件 我现在正试图将其分成几个文件 我正在使用 Webpack 而且 在我的
  • 我可以在 Protractor 框架中重用/调用 Selenium-Java 框架中的现有 API 吗?

    如果这是一个愚蠢的问题 请耐心等待 但想到了一个主意 我们有一个非常复杂的 Selenium Webdriver Java 框架 但现在我们应用程序的某些部分正在 AngularJS 中实现 我们想使用量角器进行自动化测试 但我们希望重用现
  • 使用 AngularJS 启用/禁用锚标记

    如何使用指令方法启用 禁用锚标记 例子 单击编辑链接时 需要禁用或灰显创建和删除 单击创建链接时 需要禁用或灰显编辑和删除 JavaScript angular module ngApp controller ngCtrl scope fu
  • 在Android中检测蓝牙Le设备

    我是 Android 应用程序开发的初学者 我尝试阅读文档 但一无所获 Android 教程中的功能 例如StartLeScan 已被弃用 等等 是否有一个简单的函数可以返回蓝牙设备列表 就像是getDevices gt 设备列表 谢谢 基
  • 在 Ruby on Rails 中进行测试时更改规范中会话变量的值。(使用水豚和 selenium)

    我目前正在为我的 Ruby on Rails 应用程序编写规范 使用 Rspec 和 capybara 以及 selenium 来驱动浏览器 在执行其中一项规范时 我想更改会话变量的值 例如 我想设置session location US
  • 数组,如何仅显示“变化的值”

    假设我有一个包含日期和季节的数组 每天都有一个条目 我想仅在季节值发生变化时打印数组行 数组看起来像这样 2009 10 28 00 00 00 good season 2009 10 29 00 00 00 good season 200
  • 功能性香蕉旅行者 - 将行为与游戏状态结合在一起

    问题是我不知道如何创建类型的行为Behavior t GameState 我有更多代码 但我试图仅展示我认为讨论该问题所必需的内容 如果有空白需要填写 请告诉我 这是我所拥有的 data GameState GameState agent
  • 如何自定义 Android BLE(低功耗蓝牙)gatt 传输速度?

    我正在构建一个使用 BLE 技术传输图像的应用程序 图像不需要立即传输 因此在阅读一些文档后 我得出结论 1 3 Mbit s 是一个合理的选择 From Wikipedia Distance Range lt 100 m lt 330 f
  • php 文件上传时间创建

    我知道有一种方法可以使用 PHP 获取文件夹中的文件名列表 but 目前有什么方法可以获取使用 php 上传 创建文件的日期 时间吗 Unix 不跟踪文件的创建时间 只跟踪文件的更改 修改和访问时间 您可以使用文件时间 https www
  • 从命令行参数打开文件

    我正在尝试创建一个汇编程序 该程序创建在命令行 argv 1 上指定的文件 如果字符串已经存储在其中 它工作得很好 但是如果我按原样运行它 而 file name 没有移动到 rbx 它工作得很好 section text global s
  • dynamodb.put().promise() 不返回 put 对象

    我正在尝试利用 aws 和 dynamo db 的异步 等待功能 下面是如何在 async wait 之前放置对象的示例 正 如您在回调中看到的 您可以访问包含放置对象的数据 然而 在使用 async 和 Promise 的第二个代码块中