javascript - 根据提供的任何文档,Item.Read 不起作用

标签 javascript azure-cosmosdb

我已经阅读了有关 CosmosDB Read Item 方法的所有类型的文档。但这似乎不起作用。

const item = container.item(id, undefined);
console.log("Read item '" + item.id + "'");
const { resource: readDoc } = await item.read();
console.log("item with id found: '", readDoc);

我传递的ID是'1',集合中有id为'1'的记录。 它总是以未定义的形式返回。有人已经知道这是如何工作的吗?

这是我引用的文档。 (通过 ID 读取一个项目:Item.read) https://learn.microsoft.com/en-us/azure/cosmos-db/sql-api-nodejs-samples

最佳答案

您似乎将错误的 key 传递给了 item("id","key")。当您将 undifined 作为此方法的键传递时,这意味着您没有像此屏幕截图那样定义 id 为“1”的文档的分区键值。 enter image description here

我猜您的 id 为“1”的文档具有分区键值,因此 cosmos DB 无法找到 id 为“1”且没有分区键值的文档。如果是这样,您需要将分区键值传递给 item("id","key")

比如我有一个文档如下,我的代码应该是这样的:

const item = container.item("1", "dog");
console.log("Read item '" + item.id + "'");
const { resource: readDoc } = await item.read();
console.log("item with id found: '", readDoc);

enter image description here

关于javascript - 根据提供的任何文档,Item.Read 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64662064/

相关文章:

javascript - Codeigniter 和 javascript-添加动态输入和单选字段

azure - azure-cosmosDB 中的 ARRAY_CONTAINS 与 JOIN

c# - CreateDocumentQuery 与 LINQ 一起使用时会引发异常,与 SQL 一起使用时则正常

Javascript JSLint 创建 n 个元素

javascript - react - flex 容器外的 flex 元素

json - 在 Cosmos DB 中,如何在创建文档之前检测文档大小并对其使用react

azure - DocumentDB - 如何在存储过程中获取请求费用?

azure - 使用 Azure 流分析保留最后的值

javascript - 如何使用正则表达式仅匹配第一行?

javascript - 如何将相同的 <div>(包含我的菜单)插入所有其他 html 页面?