# @crvouga/mockingbird-service-dynamodb 中文文档

规范地址：https://npmcn.com/package/%40crvouga/mockingbird-service-dynamodb/

版本：3\.11\.0
npm 元数据更新时间：2026-11-11T02:08:49.058Z
中文译文更新时间：2026-11-11T03:19:55.725Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40crvouga/mockingbird-service-dynamodb
原文对照：https://npmcn.com/package/%40crvouga/mockingbird-service-dynamodb/?lang=original
项目主页：https://github.com/crvouga/mockingbird/tree/main/packages/service/dynamodb#readme
源码仓库：https://github.com/crvouga/mockingbird

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：4.3 MB，18 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：1 个
- 首次发布：2026-09-22T23:53:27.333Z
- 最新版本发布：2026-11-11T02:08:48.699Z
- 近 30 天下载量：3400（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：43（近 12 个月 43 个）

## 中文简介

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

## 安装

```sh
npm install @crvouga/mockingbird-service-dynamodb
```

也可以使用：`pnpm add @crvouga/mockingbird-service-dynamodb`、`yarn add @crvouga/mockingbird-service-dynamodb`、`bun add @crvouga/mockingbird-service-dynamodb`

## README

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

> 本地模拟器。 真正的API合同. 部分 [嘲笑鸟](https://github.com/crvouga/mockingbird)。 。 。 .

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

## 安装

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

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

## 使用量

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

```ts
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`, (中文(简体) ), `DynamoSeedTable`AWS 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 参考文献](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/Welcome.html)。 。 。 .

## 常见问题

### @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 和提交记录判断。

