# @a2f0/ct-client 中文文档

规范地址：https://npmcn.com/package/%40a2f0/ct-client/

版本：0\.1\.8
npm 元数据更新时间：2026-11-06T03:41:17.265Z
中文译文更新时间：2026-11-06T01:04:24.883Z
软件包许可：UNLICENSED

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

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

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

- 包体积（解压后）：17.2 kB，6 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2026-10-22T15:35:30.875Z
- 最新版本发布：2026-11-06T03:41:16.909Z
- 近 30 天下载量：7507（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：10（近 12 个月 10 个）

## 中文简介

明确初始化,带有浏览器选择退出支持的分批点击跟踪

## 安装

```sh
npm install @a2f0/ct-client
```

也可以使用：`pnpm add @a2f0/ct-client`、`yarn add @a2f0/ct-client`、`bun add @a2f0/ct-client`

## README

# @ a2f0/ ct 客户端

无框架,分批点击跟踪. 导入或构建跟踪器开始 没有收听者、计时器、存储器或请求。 明确调用 已部署的浏览器靴子, 在精确检查注册生产后 或中转原产地; 避免使用共享组件和测试.

安装方式 `bun add @a2f0/ct-client` 或者说 `npm install @a2f0/ct-client`。 。 。 .

```ts
import { createTracker } from "@a2f0/ct-client";
const tracker = createTracker({
  site: "a2f0-net",
  app: "desktop",
  environment: "production",
  capture: "all",
  page: () => "/skyline-3d",
});
tracker.init();
await tracker.flush();
tracker.setOptOut(true);
tracker.destroy();
```

该地点必须登记在API的确切出处。 默认终点 实值 [https://ct.a2f0.net/v1/点击](https://ct.a2f0.net/v1/clicks)。浏览器 MESM 已自成一体; TypeScript 类型 包含。 没有运行时间依赖. init 投放无效的站点/ 应用程序名称、 环境或端点 URL, 然后再添加听众 . 初始化跟踪器前验证配置 .

## 选项

| 选项 | 默认 | 行为 |
| --- | --- | --- |
| 站点 | 需求 | 公共网站标识符,小写字母/数字/连字符 |
| 应用 | 无效 | 默认 App swit, 小写字母/数字/连字符, 1–64 个字符 |
| 环境 | 服务器推断 | 生产或中转; 必须与注册地点和确切来源相匹配 |
| 页 次 | () => '/' | 稳定路由模板,没有记录的ID或令牌,最多200个字符 |
| 捕获 | 交互式 | 所有元素、交互式控制或标记元素 |
| 批量大小 | 20国 | 每个请求1-50克 |
| 冲出相机 | 5000块 | 100至60 000毫秒 |
| 最大队列大小 | 500个 | 以批量大小和1,000为界 |
| 启用 | 真实 | 虚假使它变成惰性 |
| 覆盖Gpc | 虚假 | 只有真忽略了全局隐私控制;其他选择退出仍然适用 |
| 结束点 | CT 结束点 | HTTPS, 或关于本地主机促进发展的 HTTP |

抓取值为“ 全部” 、“ 交互式” 和“ 标记 ” 。 指定一个稳定的标签 data-ct="开通建设". 从不将用户内容放入此属性 。 使用 data-ct-ignore在元素或祖先上排除子树. 输入、文本区域、, 选择,并总是排除可编辑的内容。 打开影子DOM和SVG的工作.

将嵌入式应用程序包入 `data-ct-app="skyline"`中最接近的属性 点击的由路径构成的路径覆盖了跟踪器默认值,包括未标记的路径 画布在打开的阴影根内单击。 无效或空的最近属性 生成无效而不是继承另一个应用程序。 每个主机使用一个跟踪器 网站;网站保留 `a2f0-net` 而其桌面、天线和其他嵌入式 应用程序获得单独的应用程序值. 封闭的阴影根只暴露他们的宿主 跨原生的 iframe 点击需要该框架内部的跟踪器.

每个跟踪器固定环境,每批发送一次。 收藏家会得到 由注册网站和确切请求生成 值拒绝整个批次。 旧客户端可能忽略两个维度: app是 环境是无效的。 从不将用户数据放入应用程序名中. 初始化 仅涉及有意登记的生产或中产地,从未涉及当地, 预览、测试或自动页面.

init 拒绝 WebDriver 控制的浏览器: 它返回错误, 并添加无 听众 只有可信任的点击被捕获;合成的点击被忽略. 输入 是偶数,并返回当前是否允许抓取。 销毁删除 听取者, 中止请求, 并丢弃队列; 后进即可启动 再来一次 冲浪发送一个批次和时间表 剩余的工作。 网络错误, 超时, 408 和 429 重试并加盖回放; 其他 4xx 回复丢弃 被拒绝的批次。 事件ID使重试 象徵.

## 选择出去

设置 OptOut( true) 在 localStorage 中保存 ct: opt- out=1, 清除队列并停止 为这个网站捕获。 setOptOut(假)去除此偏好。 跟踪器 荣誉 DNT,全球隐私控制以及CT扩展的数据-ct-失效标记. 要明确仅覆盖全球隐私控制, 请通过覆盖Gpc: true to 在调用前创建 Tracker 。 违约是虚假的。 这适用于抓取 并且只交付给追踪器。 DNT, 保存和模拟的退出,扩展, 存储出错,自动浏览器守卫仍然无法跟踪. 选择退出无法撤回服务器已经收到的请求 。 存储出错 无法跟踪 。 扩展适用于所有地点,必须安装 每个浏览器/配置中分别显示。 首选项不同步 .

队列在记忆中 。 点击量满后会降低。 隐藏页面尝试 持续冲出,但关闭/挤出/下行导航可能会丢失未发送的事件. 这是最好的分析,不是审计线索或账单来源。 没有饼干, 访问者 ID 、 本地点击历史、 文本、 hrefs、 DOM ID 、 类或窗体值 由SDK收集。 页面默认为“/”所以动态的路由永远不会被推断.

默认的 CT 收藏器添加了全部请求的 IP 和 大致的国家, 州/地区,城市,大陆, 和时区 当一批货到达。 这些领域 最多储存了90天,可供提供设备的管理员在 认证仪表板和数据API. SDK没有发送仪表板证书。 IP可以链接活动;这不是匿名分析. 获得接受 即使明确启用了覆盖Gpc,批量还是收到此元数据. 见 [收集数据政策](https://github.com/a2f0/ct/blob/main/docs/privacy.md) 在决定向网站的访客披露什么时.

## 常见问题

### @a2f0/ct-client 是什么？

明确初始化,带有浏览器选择退出支持的分批点击跟踪

### 如何安装 @a2f0/ct-client？

在项目目录运行 npm install @a2f0/ct-client，或使用 pnpm add / yarn add / bun add。

### @a2f0/ct-client 支持 TypeScript 吗？

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

### @a2f0/ct-client 支持 ESM 还是 CommonJS？

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

### @a2f0/ct-client 可以商用吗？

@a2f0/ct-client 使用 UNLICENSED 许可。作者声明为 UNLICENSED，即不授予公开使用许可（与公共领域的 Unlicense 不同）。使用前需获得作者授权。以上为概括，不构成法律意见，请以许可原文为准。

### @a2f0/ct-client 的下载量有多少？

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

### @a2f0/ct-client 还在维护吗？

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

