# @fetchproxy/protocol 中文文档

规范地址：https://npmcn.com/package/%40fetchproxy/protocol/

版本：3\.8\.0
npm 元数据更新时间：2026-11-09T14:28:41.540Z
中文译文更新时间：2026-11-14T15:09:22.817Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40fetchproxy/protocol
原文对照：https://npmcn.com/package/%40fetchproxy/protocol/?lang=original
项目主页：https://github.com/chrischall/fetchproxy#readme
源码仓库：https://github.com/chrischall/fetchproxy

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

- 包体积（解压后）：396 kB，51 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2026-05-21T04:09:37.511Z
- 最新版本发布：2026-11-09T14:28:41.084Z
- 近 30 天下载量：13257（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：88（近 12 个月 88 个）

## 中文简介

WebSocket 帧类型 + 运行时间验证器用于取取代用.

## 安装

```sh
npm install @fetchproxy/protocol
```

也可以使用：`pnpm add @fetchproxy/protocol`、`yarn add @fetchproxy/protocol`、`bun add @fetchproxy/protocol`

## README

# @ fetchproxy/ protocol

> 线- 程序类型、 运行时间验证器、 加密包装器 [获取代理](https://github.com/chrischall/fetchproxy) WebSocket协议.

内部英语:大多数用户想要 [`@fetchproxy/server`](https://www.npmjs.com/package/@fetchproxy/server) 换句话说. `@fetchproxy/server` 再出口 MCP 作者通常需要的少数协议类型(`Capability`, (中文(简体) ), `FetchInit`); 只有当您正在构建自己的桥端点时,才直接将这个软件包拉入(替代服务器,测试取用,自定义扩展).

见:

-   [顶级 README](https://github.com/chrischall/fetchproxy#readme) ——取出代用词是什么.
-   [`docs/PROTOCOL.md`](https://github.com/chrischall/fetchproxy/blob/main/docs/PROTOCOL.md) ——全线格式参考(框架,握手,密码).

## 安装

```sh
npm install @fetchproxy/protocol
```

## 这里面是什么

| 模块 | 出口 | 目的 |
| --- | --- | --- |
| `frames` | `PROTOCOL_VERSION`, (中文(简体) ), `Capability`, (中文(简体) ), `KNOWN_CAPABILITIES`,所有数据 `…Frame` 类型, `FetchInit`, (中文(简体) ), `ReadCookiesInit`, (中文(简体) ), `InnerFrame` 工会, `StoragePointerDecl`, (中文(简体) ), `IndexedDbScopeDecl`, (中文(简体) ), `CaptureHeaderDecl` | 静态+运行时间描述线上每个帧. |
| `validate` | `validateFrame`, (中文(简体) ), `validateInnerFrame`, (中文(简体) ), `ProtocolError`, (中文(简体) ), `HOSTNAME_RE` | 无第三方依赖性的防御性JSON验证人. 拒绝原型-污染尝试,错误的基底64,未知的操作/能力,糟糕的主机名. |
| `crypto` | `RawKeyPair`, (中文(简体) ), `generateX25519`, (中文(简体) ), `generateEd25519`, (中文(简体) ), `ecdhX25519`, (中文(简体) ), `hkdfSha256`, (中文(简体) ), `ed25519Sign`, (中文(简体) ), `ed25519Verify`, (中文(简体) ), `aesGcmSeal`, (中文(简体) ), `aesGcmOpen`, (中文(简体) ), `sha256` | 环绕 WebCrypto 的薄相环 `subtle`。用于服务器和扩展. |
| `mcp-id` | `generateMcpId`, (中文(简体) ), `parseMcpId`, (中文(简体) ), `isValidMcpId`, (中文(简体) ), `McpIdParts` | 每个进程 `<serverName>:<version>:<rand>` 编号. |
| `pair-code` | `pairTranscript` | 决定8位数的 SAS 代码在对等记录上 —— 两个身份酒吧, 无论是Hello Notces 和 MCP 的会话平时(`SHA256('fetchproxy/4/pair' | NUL | …)[0..7]` 作为一个大人物 `mod 100_000_000`,格式化 `XXXX-XXXX`. 3.0.0+; 仅两个长期身份酒吧上的v3对功能已经消失,因此一个代码不能一次被下线,永远重复使用该MCP. |
| `seal` | `sealInnerFrame`, (中文(简体) ), `openEncryptedFrame` | AES-256-GCM 加密/解密内部JSON有效载荷,由 `sessionKey`。 。 。 . |
| `encoding` | `toB64`, (中文(简体) ), `fromB64`, (中文(简体) ), `toHex`, (中文(简体) ), `concatBytes` | 共享基数64/hex帮助. |
| `json-pointer` | `evalJsonPointer`, (中文(简体) ), `isValidJsonPointer`, (中文(简体) ), `matchesDeclaredKey`, (中文(简体) ), `undeclaredKeys` | JSON-指针评价+克光比取存储指针取出. |

## 稳定

所有出口都是公布的表面的一部分,并随同分解:

-   **少校** 凸起信号相容的电线变化(新需要的字段,被去除的字段,语义变换).
-   **次要** 凸起添加字段或添加接受值.
-   **补丁** 凸起是纯粹的修复.

0.2.0是一个从0.1.x起的不兼容电线跳跃(单相 `domain: string` → `domains: string[]`; 已添加 `capabilities`; 已添加 `op` 对内部请求/答复的歧视者.

## 许可证

麻省理工学院.

## 常见问题

### @fetchproxy/protocol 是什么？

WebSocket 帧类型 \+ 运行时间验证器用于取取代用\.

### 如何安装 @fetchproxy/protocol？

在项目目录运行 npm install @fetchproxy/protocol，或使用 pnpm add / yarn add / bun add。

### @fetchproxy/protocol 支持 TypeScript 吗？

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

### @fetchproxy/protocol 支持 ESM 还是 CommonJS？

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

### @fetchproxy/protocol 可以商用吗？

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

### @fetchproxy/protocol 的下载量有多少？

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

### @fetchproxy/protocol 还在维护吗？

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

