# darkws 中文文档

规范地址：https://npmcn.com/package/darkws/

版本：5\.1\.3
npm 元数据更新时间：2026-11-03T09:20:10.947Z
中文译文更新时间：2026-11-03T11:02:39.670Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：109 kB，13 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2023-05-21T21:11:47.414Z
- 最新版本发布：2026-11-03T09:20:10.581Z
- 已发布版本数：23（近 12 个月 9 个）

## 中文简介

浏览器的无依赖的DarkWS客户端

## 安装

```sh
npm install darkws
```

也可以使用：`pnpm add darkws`、`yarn add darkws`、`bun add darkws`

## README

![DarkWS logo](https://raw.githubusercontent.com/Bobsans/DarkWS/main/assets/icon.png)

# darkws

[![npm](https://img.shields.io/npm/v/darkws.svg?label=npm)](https://www.npmjs.com/package/darkws) [![CI](https://github.com/Bobsans/DarkWS/actions/workflows/ci.yml/badge.svg)](https://github.com/Bobsans/DarkWS/actions/workflows/ci.yml) [![Types](https://img.shields.io/npm/types/darkws.svg)](https://www.npmjs.com/package/darkws) [![Docs](https://img.shields.io/badge/docs-bobsans.github.io%2FDarkWS-blue)](https://bobsans.github.io/DarkWS/clients/browser) [![License](https://img.shields.io/github/license/Bobsans/DarkWS)](https://github.com/Bobsans/DarkWS/blob/main/LICENSE)

的无依赖浏览器客户端 [DarkWS](https://github.com/Bobsans/DarkWS) 服务器：输入请求，广播订阅，带回退的重新连接，心跳， 选择加入重试，以及自动会话恢复。ESM与TypeScript声明。

```bash
npm install darkws
```

```ts
import DarkWs, { ErrorResponse } from "darkws";

const client = new DarkWs({
  secure: location.protocol === "https:",
  path: "/ws",
  authenticationToken: () => auth.accessToken(),
}).connect();

const user = await client.request<User>("user:get", { id: "42" });

const unsubscribe = client.onAction<User>("user:updated", updated => render(updated));

try {
  await client.request("user:delete", { id: "42" });
} catch (error) {
  if (error instanceof ErrorResponse) console.warn(error.message); // the server's error code
}

unsubscribe();
client.dispose();
```

有关首次使用时创建的应用程序范围的客户端，请参见 `DarkWs.lazy()`。

## 文档

-   [浏览器客户端](https://bobsans.github.io/DarkWS/clients/browser):请求, 超时、重试、事件、身份验证、生命周期、选项
-   [协议和客户端生命周期契约](https://bobsans.github.io/DarkWS/protocol#client-lifecycle-contract)
-   [Документация на русском](https://bobsans.github.io/DarkWS/ru/clients/browser)

## 常见问题

### darkws 是什么？

浏览器的无依赖的DarkWS客户端

### 如何安装 darkws？

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

### darkws 支持 TypeScript 吗？

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

### darkws 支持 ESM 还是 CommonJS？

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

### darkws 可以商用吗？

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

### darkws 还在维护吗？

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

