# @apeleghq/multipart-parser 中文文档

规范地址：https://npmcn.com/package/%40apeleghq/multipart-parser/

版本：1\.0\.21
npm 元数据更新时间：2025-10-13T04:55:38.314Z
中文译文更新时间：2026-11-06T09:01:52.144Z
软件包许可：ISC

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

原始 npm 页面：https://www.npmjs.com/package/%40apeleghq/multipart-parser
原文对照：https://npmcn.com/package/%40apeleghq/multipart-parser/?lang=original
项目主页：https://github.com/ApelegHQ/ts-multipart-parser#readme
源码仓库：https://github.com/ApelegHQ/ts-multipart-parser

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

- 包体积（解压后）：68.4 kB，57 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=16\.0\.0
- 运行依赖：1 个
- 首次发布：2024-09-11T16:38:31.566Z
- 最新版本发布：2025-10-13T04:55:37.861Z
- 近 30 天下载量：8155（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：7（近 12 个月 0 个）

## 中文简介

MIME 多段消息的文本流解析器

## 安装

```sh
npm install @apeleghq/multipart-parser
```

也可以使用：`pnpm add @apeleghq/multipart-parser`、`yarn add @apeleghq/multipart-parser`、`bun add @apeleghq/multipart-parser`

## README

# 多段信件解析器

[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=Exact-Realty_ts-multipart-parser&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=Exact-Realty_ts-multipart-parser) [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=Exact-Realty_ts-multipart-parser&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=Exact-Realty_ts-multipart-parser) [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=Exact-Realty_ts-multipart-parser&metric=bugs)](https://sonarcloud.io/summary/new_code?id=Exact-Realty_ts-multipart-parser) [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=Exact-Realty_ts-multipart-parser&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=Exact-Realty_ts-multipart-parser) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=Exact-Realty_ts-multipart-parser&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=Exact-Realty_ts-multipart-parser) ![NPM Downloads](https://img.shields.io/npm/dw/@apeleghq/multipart-parser?style=flat-square)

这是一个用于解析MIME多段消息的库, 如用于 HTTP 请求和电子邮件消息,以 TypeScript 书写. 它提供了一个 返回每个解析页眉和正文的易用自动同步生成器 包含在多段信息中。 支持嵌入多段消息.

## 特征

-   根据 [规格](https://www.ietf.org/rfc/rfc2046.html#section-5.1)
-   支持嵌入多段消息
-   轻而易举
-   以 TypeScript 写成, 但也可以使用 Plain JavaScript
-   测试良好

## \* 安装

您可以使用其中之一安装库 `npm` 或者说 `yarn`数字 :

```sh
npm install @apeleghq/multipart-parser
```

```sh
yarn add @apeleghq/multipart-parser
```

## 使用量

库导出函数 `parseMultipartMessage`,它返回一个同步 与信头和身体一起产生物体的生成器(作为 `Uint8Array`(单位:千美元) 多段信息中的每一部分.

### • API

#### `parseMultipartMessage(stream: ReadableStream, boundary: string): AsyncGenerator`

此函数需要 `ReadableStream` 和一个边界字符串作为参数 返回以下列方式生成对象的同步生成器 属性 :

-   `headers`(单位:千美元) `Headers` 含有当前部分标题的对象
-   `body`(单位:千美元) `Uint8Array` 包含当前部分正文,或 `null` 若为 部分为空.
-   `parts`: 具有相同结构的嵌入式传动器,用于在 当前部分,如果该部分是 `Content-Type` 页眉表示为 多段信息 (中文(简体) ).

#### `boundaryRegex: RegExp`

用于验证边界字符串的正则表达式.

#### `boundaryMatchRegex: RegExp`

一个正则表达式,可用于从一个 `Content-Type` 头曰.

#### `encodeMultipartMessage(boundary: string, msg: AsyncIterable<TDecodedMultipartMessage>): ReadableStream<ArrayBuffer>`

此函数以边框字符串和一系列消息作为参数并返回 a `ReadableStream` 可读取以获取多段消息.

`TDecodedMultipartMessage` 被定义为具有下列字段的对象:

-   `headers`(单位:千美元) `Headers` 含有当前部分标题的对象
-   `body` (可选) : 本部分正文,或 `null` 如果该部分是 空无相. 它可以是下列任何一种类型: `ArrayBuffer`, (中文(简体) ), `Blob`, (中文(简体) ), `ReadableStream` 或任何输入的数组,例如 `Uint8Array`。 。 。 .
-   `parts` (可选) : 一个或多个元素的同步或同步可移动 类型相同(`TDecodedMultipartMessage`),用于嵌入式消息. 如果两者兼有 `body` 财务报告和审定财务报表 `parts` 具体说明, `body` 以优先为准.

### 示例

```js
import { parseMultipartMessage } from '@apeleghq/multipart-message-parser';

const decoder = new TextDecoder();

const stream = ... // a ReadableStream containing the multipart message
const boundary = 'my-boundary'; // the boundary of the multipart message

for await (const part of parseMultipartMessage(stream, boundary)) {
  console.log(part.headers.get('content-type'));
  console.log(decoder.decode(part.body));
}
```

## 捐款

我们欢迎为这个项目提供捐款! 自由提出拉拉请求或 如果您找到错误或有特性请求,则打开一个问题.

## 许可证

图书馆持有ICC许可证,详情见LICENSE 资料.

## 常见问题

### @apeleghq/multipart-parser 是什么？

MIME 多段消息的文本流解析器

### 如何安装 @apeleghq/multipart-parser？

在项目目录运行 npm install @apeleghq/multipart-parser，或使用 pnpm add / yarn add / bun add。

### @apeleghq/multipart-parser 支持 TypeScript 吗？

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

### @apeleghq/multipart-parser 支持 ESM 还是 CommonJS？

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

### @apeleghq/multipart-parser 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=16\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @apeleghq/multipart-parser 可以商用吗？

@apeleghq/multipart-parser 使用 ISC 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @apeleghq/multipart-parser 的下载量有多少？

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

### @apeleghq/multipart-parser 还在维护吗？

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

