# @asyncapi/openapi-schema-parser 中文文档

规范地址：https://npmcn.com/package/%40asyncapi/openapi-schema-parser/

版本：3\.1\.0
npm 元数据更新时间：2026-08-06T14:09:26.040Z
中文译文更新时间：2026-11-07T01:35:18.608Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40asyncapi/openapi-schema-parser
原文对照：https://npmcn.com/package/%40asyncapi/openapi-schema-parser/?lang=original
项目主页：https://github.com/asyncapi/parser-js
源码仓库：https://github.com/asyncapi/parser-js

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

- 包体积（解压后）：37.8 kB，10 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：4 个
- peer 依赖：@asyncapi/parser ^3\.6\.2
- 首次发布：2020-03-11T17:12:56.877Z
- 最新版本发布：2026-08-06T14:09:25.541Z
- 近 30 天下载量：1481753（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：35（近 12 个月 3 个）

## 中文简介

AsyncAPI schema parser用于OpenAPI 3.0.x和斯瓦格 2.x schemas.

## 安装

```sh
npm install @asyncapi/openapi-schema-parser
```

也可以使用：`pnpm add @asyncapi/openapi-schema-parser`、`yarn add @asyncapi/openapi-schema-parser`、`bun add @asyncapi/openapi-schema-parser`

## README

# OpenAPI Schema 解析器

AsyncAPI schema parser用于OpenAPI 3.0.x和斯瓦格 2.x schemas.

> **说明** 版本 +++ `3.0.0` 软件包仅由 `@asyncapi/parser` 翻译: `2.0.0`。 。 。 .

> **说明** 此软件包在 [`asyncapi/parser-js`](https://github.com/asyncapi/parser-js) 单列波, 下 `packages/openapi-schema-parser`。它仍然作为 npm 发布 `@asyncapi/openapi-schema-parser` 和同一个公共API。 请解开问题并拉动请求 `parser-js` 仓库.
> 
> 软件包规格 : [`docs/openapi-schema-parser/spec.md`](https://npmcn.com/package/docs/openapi-schema-parser/spec.md)。 。 。 .

-   [安装](https://npmcn.com/package/%40asyncapi/openapi-schema-parser/#readme-installation)
-   [使用量](https://npmcn.com/package/%40asyncapi/openapi-schema-parser/#readme-usage)

## 安装

```bash
npm install @asyncapi/openapi-schema-parser
// OR
yarn add @asyncapi/openapi-schema-parser
```

## 使用量

```ts
import { Parser } from '@asyncapi/parser';
import { OpenAPISchemaParser } from '@asyncapi/openapi-schema-parser';

const parser = new Parser();
parser.registerSchemaParser(OpenAPISchemaParser()); 

const asyncapiWithOpenAPI = `
asyncapi: 2.0.0
info:
  title: Example with OpenAPI
  version: 0.1.0
channels:
  example:
    publish:
      message:
        schemaFormat: 'application/vnd.oai.openapi;version=3.0.0'
        payload: # The following is an OpenAPI schema
          type: object
          properties:
            title:
              type: string
              nullable: true
            author:
              type: string
              example: Jack Johnson
`;

const { document } = await parser.parse(asyncapiWithOpenAPI);
```

```js
const { Parser } = require('@asyncapi/parser');
const { OpenAPISchemaParser } = require('@asyncapi/openapi-schema-parser');

const parser = new Parser();
parser.registerSchemaParser(OpenAPISchemaParser()); 

const asyncapiWithOpenAPI = `
asyncapi: 2.0.0
info:
  title: Example with OpenAPI
  version: 0.1.0
channels:
  example:
    publish:
      message:
        schemaFormat: 'application/vnd.oai.openapi;version=3.0.0'
        payload: # The following is an OpenAPI schema
          type: object
          properties:
            title:
              type: string
              nullable: true
            author:
              type: string
              example: Jack Johnson
`;

const { document } = await parser.parse(asyncapiWithOpenAPI);
```

它还支持引用远程 OpenAPI 计划:

```ts
import { Parser } from '@asyncapi/parser';
import { OpenAPISchemaParser } from '@asyncapi/openapi-schema-parser';

const parser = new Parser();
parser.registerSchemaParser(OpenAPISchemaParser()); 

const asyncapiWithOpenAPI = `
asyncapi: 2.0.0
info:
  title: Example with OpenAPI
  version: 0.1.0
channels:
  example:
    publish:
      message:
        schemaFormat: 'application/vnd.oai.openapi;version=3.0.0'
        payload:
          $ref: 'yourserver.com/schemas#/Book'
`;

const { document } = await parser.parse(asyncapiWithOpenAPI);
```

## 常见问题

### @asyncapi/openapi-schema-parser 是什么？

AsyncAPI schema parser用于OpenAPI 3\.0\.x和斯瓦格 2\.x schemas\.

### 如何安装 @asyncapi/openapi-schema-parser？

在项目目录运行 npm install @asyncapi/openapi-schema-parser，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@asyncapi/parser（^3\.6\.2）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @asyncapi/openapi-schema-parser 支持 TypeScript 吗？

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

### @asyncapi/openapi-schema-parser 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @asyncapi/openapi-schema-parser 可以商用吗？

@asyncapi/openapi-schema-parser 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @asyncapi/openapi-schema-parser 的下载量有多少？

根据 npm 官方下载统计，@asyncapi/openapi-schema-parser 在 2026/10/07 – 2026/11/05 这 30 天内被下载 1,481,753 次，日均约 49,392 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @asyncapi/openapi-schema-parser 还在维护吗？

最新版本 3\.1\.0 发布于 2026/08/06（3 个月前）；至今共发布 35 个版本，其中过去 12 个月发布了 3 个；首次发布于 2020/03/12。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

