# @botpoison/browser 中文文档

规范地址：https://npmcn.com/package/%40botpoison/browser/

版本：1\.2\.0
npm 元数据更新时间：2026-11-04T19:27:57.371Z
中文译文更新时间：2026-11-08T12:20:57.135Z
软件包许可：未声明

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

原始 npm 页面：https://www.npmjs.com/package/%40botpoison/browser
原文对照：https://npmcn.com/package/%40botpoison/browser/?lang=original
项目主页：https://botpoison.com/documentation/libraries/botpoison-browser/

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

- 包体积（解压后）：17.8 kB，5 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=18
- 运行依赖：0 个
- 首次发布：2021-01-23T10:34:40.454Z
- 最新版本发布：2026-11-04T19:27:57.185Z
- 近 30 天下载量：9803（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：40（近 12 个月 11 个）

## 中文简介

浏览器的Botpoison挑战:一个隐形 CAPTCHA 的替代方案,在发送一个表单时解决工作证明谜题. 没有饼干,没有部件.

## 安装

```sh
npm install @botpoison/browser
```

也可以使用：`pnpm add @botpoison/browser`、`yarn add @botpoison/browser`、`bun add @botpoison/browser`

## README

# @botpoison/浏览器

浏览器库 [Botpoison 挑战](https://botpoison.com/challenge/), (中文(简体) ), 用于网络表格的 CAPTCHA 的无形替代品。 当访客按住 发送, 库获取一个签名的工作证明谜题, 在 浏览器并将答案附在窗体上。 访客没有看到谜题,没有 复选框和无部件。 您的服务器然后用一个电话检查答案, 用于 实例 [`@botpoison/node`](https://www.npmjs.com/package/@botpoison/node)。 。 。 .

-   无依取相. 装入 `async`。 。 。 .
-   设置不 cookie 并在浏览器中存储任何内容 .
-   需求 `BigInt` 和Web Crypto,所以页面必须服务于 HTTPS(或 从当地主机).

您需要一个项目的公用钥匙( E)`pk_...`) (中文(简体) ). 创建免费的工程 [(原始内容存档于2017-10-26). botpoison.com](https://botpoison.com/)。 。 。 .

## 一个简单的 HTML 形式

没有JavaScript可以写入. 添加脚本并在表单上放出您的公钥 :

```html
<script
  src="https://unpkg.com/@botpoison/browser@1.2.0/dist/index.js"
  integrity="sha384-Coq4yXcH6P37EoKbvbmZZj3UpsLwU5Ir/tth7Fgf24Q5JUj2I4hcwqtj3zKi7+PA"
  crossorigin="anonymous"
  async
></script>

<form action="/contact" method="POST" data-botpoison-public-key="pk_xxxxxxxx">
  <!-- your fields -->
  <button type="submit">Send</button>
</form>
```

提交库解决谜题时, 添加隐藏 `_botpoison` 字段和 发送表格。 燃烧 `botpoison-challenge-start`, (中文(简体) ), `botpoison-challenge-success` 财务报告和审定财务报表 `botpoison-challenge-error` 在表单上。 打开 未发送表单出错: 请听 `botpoison-challenge-error` 告诉 游客们 发生了什么事.

脚本加载前发送的表格 `_botpoison`。为了防止这种情况,保留 发送禁用到脚本起火 `botpoison-ready` (单位:千美元)[实例](https://botpoison.com/documentation/libraries/botpoison-browser/#ready)) (中文(简体) ).

## 用 JavaScript 发送的表格

```sh
npm install @botpoison/browser
```

```js
import Botpoison from "@botpoison/browser";

const botpoison = new Botpoison({ publicKey: "pk_xxxxxxxx" });

form.addEventListener("submit", async (event) => {
  event.preventDefault();
  const { solution } = await botpoison.challenge();
  await fetch("/contact", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ ...fields, _botpoison: solution }),
  });
});
```

`challenge()` 当谜题无法获取或解开时拒绝, 例如 当API无法到达. `challenge({ onProgress })` 报告进展情况 解时从 0 到 1 .

## 在您的服务器上

发送 `_botpoison` 值为 `/verify` 用你的密钥,接受 只在答复时提交 `ok: true`。见 [在您的服务器上验证](https://botpoison.com/documentation/challenge/getting-started/#node) 用于Node.js,PHP,Python,Go,Rust,Java和平原HTTP.

## 文档

-   [开始挑战](https://botpoison.com/documentation/challenge/getting-started/)
-   [图书馆参考资料](https://botpoison.com/documentation/libraries/botpoison-browser/)
-   [测试模式](https://botpoison.com/documentation/challenge/test-mode/)

## 常见问题

### @botpoison/browser 是什么？

浏览器的Botpoison挑战:一个隐形 CAPTCHA 的替代方案,在发送一个表单时解决工作证明谜题\. 没有饼干,没有部件\.

### 如何安装 @botpoison/browser？

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

### @botpoison/browser 支持 TypeScript 吗？

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

### @botpoison/browser 支持 ESM 还是 CommonJS？

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

### @botpoison/browser 需要什么版本的 Node\.js？

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

### @botpoison/browser 可以商用吗？

@botpoison/browser 使用 未声明 许可。package\.json 没有声明许可证。没有许可证的代码默认保留全部权利，商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括，不构成法律意见，请以许可原文为准。

### @botpoison/browser 的下载量有多少？

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

### @botpoison/browser 还在维护吗？

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

