@crvouga/mockingbird-service-dynamodb

中文文档
3.11.0发布于 2026/11/11MITTypeScriptES Module构建来源已验证近 30 天下载 3400

带有已键入项目、表达式、索引、页码、交易和流的状态亚马逊DynamoDB模拟器.

中文使用文档
文档目录5 节
  1. 安装
  2. 使用量
  3. 管理和确定性控制
  4. 故意不模拟
  5. API 密码

@crvouga/mockingbird-service-dinamodb 页面存档备份,存于互联网档案馆

本地模拟器。 真正的API合同. 部分 嘲笑鸟。 。 。 .

AWS SDK v3 低等客户端和 DynamoDBDocumentClient。它保存 DynamoDB 属性类型,同时建模 CRUD,表达式,索引,页码,分批,交易,TTL,流,以及不与AWS联系的有条件写作.

安装

npm install -D @crvouga/mockingbird-service-dynamodb

仅限无害环境管理。 节点22+或Bun 1.2+.

使用量

指着SDK endpoint 选项。 接受Fixture SigV4证书.

import { DynamoDBClient } from "@aws-sdk/client-dynamodb"
import { DynamoDBDocumentClient, GetCommand } from "@aws-sdk/lib-dynamodb"
import { createServer } from "@crvouga/mockingbird-service-dynamodb/server"

// Test setup: seed the emulator and point the AWS SDK client your application uses at it.
const emulator = await createServer({
  tables: [
    {
      name: "records",
      keySchema: [{ AttributeName: "pk", KeyType: "HASH" }],
      items: [{ pk: { S: "fixture" }, status: { S: "ready" } }],
    },
  ],
})
const db = DynamoDBDocumentClient.from(
  new DynamoDBClient({
    endpoint: emulator.url,
    region: "us-east-1",
    credentials: { accessKeyId: "fixture", secretAccessKey: "fixture" },
  }),
)

// Application code: ordinary SDK calls.
const { Item } = await db.send(new GetCommand({ TableName: "records", Key: { pk: "fixture" } }))
// Item: { pk: "fixture", status: "ready" }

await emulator.close() // after the test

支持的操作有创建表、描述表、获取项目、设置项目、更新项目、删除项目、查询、扫描、批发项目、批发项目、转录项目和转录项目。 表达子集包括表达式名称/值别名,SET/ADD/REMOVE/DELETE, if_not_exists;条件、过滤器和按键条件表达式由DynamoDB的语法进行解析(在数值或路径之间进行比较,BETWBENT,IN,和/OR/NOT之间加括号, attribute_exists, (中文(简体) ), attribute_not_exists, (中文(简体) ), attribute_type, (中文(简体) ), begins_with, (中文(简体) ), contains, (中文(简体) ), size; 投影、条件、限制、光标、索引顺序和返回值.

管理和确定性控制

  • 构造定着定义表格,索引,打出的项目,以及TTL属性.
  • GET /__admin/tables, (中文(简体) ), /__admin/items?table=…,以及 /__admin/streams?table=… 检查当地州并订购INSERT/MODIFY/REMOVE记录.
  • 将共享仿真器时钟提前到过期的 TTL 项上, 不睡觉 .
  • 错误预设为 throttled 和一发子弹 unavailable;通用断层规则可以模拟未经处理的批量响应或最终被读出故障.

共享运行时间还提供重设、时间表、请求日记、度量衡、断层和名称空间隔离 x-mockingbird-namespace, (中文(简体) ), /__admin/ns/<name>,或SigV4存取键映射.

故意不模拟

PartiQL,Control-plane operation outside Creature/Description,本地/全球表复制,IAM政策评价,加密,备份,生产能力核算,所有DynamoDB表达语法,真实的同步流,仪表板,以及计费等不都是被模拟的.

API 密码

  • DynamoAPI, (中文(简体) ), DynamoAPIOptions, (中文(简体) ), DynamoSeedTableAWS JSON 处理器和固定装置.
  • AttributeValue, (中文(简体) ), Item, (中文(简体) ), KeySchemaElement, (中文(简体) ), DynamoIndex, (中文(简体) ), DynamoItem, (中文(简体) ), DynamoTable, (中文(简体) ), StreamRecord: 键入状态.
  • createRuntime, (中文(简体) ), DynamoRuntime, (中文(简体) ), DynamoRuntimeOptions:满口口鸟跑.
  • DYNAMODB_NAMESPACE, (中文(简体) ), DYNAMODB_PRESETS, (中文(简体) ), accessKeyCredential:常数与控制.
  • document, (中文(简体) ), operationIds, (中文(简体) ), supportedOperationIds: 生成了 OpenAPI 元数据.
  • createServer, (中文(简体) ), DynamoServerOptions, (中文(简体) ), DEFAULT_PORT, (中文(简体) ), serveTarget 从 ./server:节点HTTP适配器和CLI集成.

官方预言: 亚马逊 DynamoDB API 参考文献。 。 。 .

版本与发布记录

@crvouga/mockingbird-service-dynamodb 共发布 43 个版本,首次发布于 2026/09/23;过去 12 个月发布了 43 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
3.11.0latest2026/11/11今天
3.10.112026/11/038 天前
3.10.102026/11/038 天前
3.10.92026/11/038 天前
3.10.82026/11/038 天前
3.10.72026/11/038 天前

关于 @crvouga/mockingbird-service-dynamodb 的常见问题

@crvouga/mockingbird-service-dynamodb 是什么?

带有已键入项目、表达式、索引、页码、交易和流的状态亚马逊DynamoDB模拟器.

如何安装 @crvouga/mockingbird-service-dynamodb?

在项目目录运行 npm install @crvouga/mockingbird-service-dynamodb,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 mockingbird-dynamodb,可以用 npx mockingbird-dynamodb 直接运行。

@crvouga/mockingbird-service-dynamodb 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@crvouga/mockingbird-service-dynamodb 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@crvouga/mockingbird-service-dynamodb 可以商用吗?

@crvouga/mockingbird-service-dynamodb 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@crvouga/mockingbird-service-dynamodb 的下载量有多少?

根据 npm 官方下载统计,@crvouga/mockingbird-service-dynamodb 在 2026/10/11 – 2026/11/09 这 30 天内被下载 3,400 次,日均约 113 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@crvouga/mockingbird-service-dynamodb 还在维护吗?

最新版本 3.11.0 发布于 2026/11/11(今天);至今共发布 43 个版本,其中过去 12 个月发布了 43 个;首次发布于 2026/09/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。