@ahoo-wang/fetcher-eventstream
把 Server-Sent Events 解析为 Web Streams,并通过异步迭代消费类型化 JSON 事件。
HTTP 响应是增量数据而不是完整正文时使用该包。
安装
pnpm add @ahoo-wang/fetcher @ahoo-wang/fetcher-eventstream
Peer 依赖为 @ahoo-wang/fetcher。导入该包会给平台 Response 类型和原型增加事件流
辅助 API。
示例
import '@ahoo-wang/fetcher-eventstream';
import { Fetcher } from '@ahoo-wang/fetcher';
interface Progress {
percent: number;
}
const response = await new Fetcher().get('/jobs/42/events');
const events = response.requiredJsonEventStream<Progress>();
for await (const event of events) {
console.log(event.data.percent);
}
核心能力
Response 内容类型识别和 optional/required 流辅助 API。
通过原生 TransformStream 阶段解析 SSE 行与事件。
类型化 JSON 事件流与协议专用结束检测。
面向原始与 JSON SSE 流的 Fetcher 结果提取器。
保留源 Response 的转换错误。
文档
English · 许可证
关于 @ahoo-wang/fetcher-eventstream 的常见问题@ahoo-wang/fetcher-eventstream 是什么? Server-Sent Events (SSE) support for Fetcher HTTP client with native LLM streaming API support. Enables real-time data streaming and token-by-token LLM response handling.
如何安装 @ahoo-wang/fetcher-eventstream? 在项目目录运行 npm install @ahoo-wang/fetcher-eventstream,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@ahoo-wang/fetcher(^6.0.1)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。
@ahoo-wang/fetcher-eventstream 支持 TypeScript 吗? 支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。
@ahoo-wang/fetcher-eventstream 支持 ESM 还是 CommonJS? 同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。
@ahoo-wang/fetcher-eventstream 需要什么版本的 Node.js? package.json 的 engines 字段要求 Node.js >=18.20.8。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。
@ahoo-wang/fetcher-eventstream 可以商用吗? @ahoo-wang/fetcher-eventstream 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。
@ahoo-wang/fetcher-eventstream 的下载量有多少? 根据 npm 官方下载统计,@ahoo-wang/fetcher-eventstream 在 2026/10/05 – 2026/11/03 这 30 天内被下载 6,288 次,日均约 210 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
@ahoo-wang/fetcher-eventstream 还在维护吗? 最新版本 6.0.1 发布于 2026/10/04(1 个月前);至今共发布 356 个版本,其中过去 12 个月发布了 140 个;首次发布于 2025/08/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。