Azure Cosmos DB Node.js 示例

对 Azure Cosmos DB 资源执行 CRUD 操作和其他常见操作的示例解决方案包含在 azure-cosmos-js GitHub 存储库中。 本文提供:

  • 指向每个 Node.js 示例项目文件中任务的链接。
  • 指向相关 API 参考内容的链接。

先决条件

如果没有 Azure 订阅,可在开始前创建一个试用帐户

可以使用 URI 为 https://localhost:8081Azure Cosmos DB 模拟器对请求进行身份验证中提供了主密钥。

也需 JavaScript SDK

Note

每个示例都是独立的,自行对自身进行设置并在完成后自行进行清理。 因此,这些示例对 Containers.create 发出多个调用。 每次执行完此操作,均会按照正在创建的容器的性能层,向订阅收取使用 1 小时的费用。

数据库示例

DatabaseManagement 项目的 app.js 文件演示如何执行以下任务。

任务 API 参考
创建数据库(如果不存在) Databases.createIfNotExists
列出帐户的数据库 Databases.readAll
按 ID 读取数据库 Database.read
删除数据库 Database.delete

容器示例

ContainerManagement 项目的 app.js 文件演示如何执行以下任务。

任务 API 参考
创建容器(如果不存在) Containers.createIfNotExists
列出帐户的容器 Containers.readAll
按 ID 读取集合 Container.read
删除容器 Container.delete

项示例

ItemManagement 项目的 app.js 文件演示如何执行以下任务。

任务 API 参考
创建项 Items.create
读取容器中的所有项 Items.readAll
按 ID 读取项 Item.read
仅当项更改时读取项 Item.read
RequestOptions.accessCondition
查询文档 Items.query
替换项 Item.replace
使用条件 ETag 检查替换项 Item.replace
RequestOptions.accessCondition
删除项 Item.delete

索引示例

IndexManagement 项目的 app.js 文件演示如何执行以下任务。

任务 API 参考
手动为特定文档编制索引 RequestOptions.indexingDirective: 'include'
手动从索引中排除特定文档 RequestOptions.indexingDirective: 'exclude'
对批量导入使用延迟索引或读取大量容器 IndexingMode.Lazy
从索引中排除路径 IndexingPolicy.ExcludedPath
允许在范围操作期间扫描字符串路径 FeedOptions.EnableScanInQuery
在字符串路径上创建范围索引 IndexKind.RangeIndexingPolicyItems.query
使用默认 indexPolicy 创建容器,然后对其进行联机更新 Containers.create

有关索引的详细信息,请参阅 Azure Cosmos DB 索引策略

服务器端编程示例

ServerSideScripts 项目的 app.js 文件演示如何执行以下任务。

任务 API 参考
创建存储过程 StoredProcedures.create
执行存储过程 StoredProcedure.execute

有关服务器端编程的详细信息,请参阅 Azure Cosmos DB 服务器端编程:存储过程、数据库触发器和 UDF