# @distilled\.cloud/zerossl 中文文档

规范地址：https://npmcn.com/package/%40distilled.cloud/zerossl/

版本：1\.0\.0-rc\.19
npm 元数据更新时间：2026-11-11T23:28:07.551Z
中文译文更新时间：2026-11-12T11:29:08.216Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40distilled.cloud/zerossl
原文对照：https://npmcn.com/package/%40distilled.cloud/zerossl/?lang=original
源码仓库：https://github.com/alchemy-run/distilled

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

- 包体积（解压后）：270 kB，43 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：1 个
- peer 依赖：effect ^4\.1\.2
- 首次发布：2026-10-02T08:16:56.598Z
- 最新版本发布：2026-11-11T23:28:07.159Z
- 近 30 天下载量：2440878（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：8（近 12 个月 8 个）

## 中文简介

暂无中文简介

## 安装

```sh
npm install @distilled.cloud/zerossl
```

也可以使用：`pnpm add @distilled.cloud/zerossl`、`yarn add @distilled.cloud/zerossl`、`bun add @distilled.cloud/zerossl`

## README

# 效果的零SSL

`@distilled.cloud/zerossl` 提供 ZeroSSL 外部账户绑定 证书的终点。 并列安装 `effect`设置 `ZEROSSL_ACCESS_KEY`, (中文(简体) ), 将此保存为 `example.ts`运行 `node example.ts`数字 :

```ts
import * as ZeroSsl from "@distilled.cloud/zerossl";
import * as Effect from "effect/Effect";
import * as FetchHttpClient from "effect/http/FetchHttpClient";

const eab = await Effect.runPromise(
  ZeroSsl.zerossl.generateEabCredentials({}).pipe(
    Effect.provide(ZeroSsl.CredentialsFromEnv),
    Effect.provide(FetchHttpClient.layer),
  ),
);
console.log({ success: eab.success });
// Store eab.eab_kid and the redacted eab.eab_hmac_key securely.
```

这使一个真正的信用代代请求。 EAB证书可重复使用 并遵守每日限制; 生成一次并保留对数而不是 运行每个证书的示例.

## 认证和产出

`CredentialsFromEnv` 读取 `ZEROSSL_ACCESS_KEY`后退为 `ZERO_SSL_KEY`。 。 。 . `ZeroSsl.layer({ accessKey, apiBaseUrl })` 接受明确全权证书 编辑访问密钥 。 请求使用 `Authorization: ApiKey <key>`查询 参数,随 [当前 REST 认证指导](https://zerossl.com/documentation/api/)。 。 。 . 只有标题的认证由 `POST /acme/eab-credentials`。 。 。 .

服务留下来 `ZeroSsl.zerossl.generateEabCredentials` (亦可提供) 从 `@distilled.cloud/zerossl/zerossl`) (中文(简体) ). 其 HMAC 输出为 `Redacted<string>`,匹配运行时间值. `success` 保持布尔; 协议还使 EAB 文档的数字正常化 `1`编号 :`0` 形式. JSON 输出在将敏感值包起来之前是经过计数验证的. `ZeroSslParseError` 省去活体和潜在的秘密解析器 错误。 保留打出的比率限制错误 `Retry-After` 作为可选效果 `Duration`,包括当 ZeroSSL 用 HTTP 200 发送错误信封时.

## 来源和限制

`scripts/convert.ts` 从 ZeroSSL API 参考构建出史密斯模型, zeroSSL 发布为 Markdown 在 [0ssl/文档](https://github.com/zerossl/documentation) 和光谱 镜像 `specs/spec-mirror-zerossl` 每日快照:每个端点一页 (方法,URL,参数表,示例响应)加上出错码表. 参考文献中没有提到的 `patches/`。编辑转换器, 补丁和手写协议,没有生成服务文件; 以 `pnpm generate zerossl` 从工作空间根.

只有EAB证书生成是模型化的,而不是ZeroSSL的证书管理 爱普。 签发证书的使用 `@distilled.cloud/acme` 与零SSL 目录和 `externalAccountBinding: { keyId: eab.eab_kid, hmacKey: eab.eab_hmac_key }`。 。 。 . 呼叫者拥有挑战解决,更新, 和安全证书存储。 重试 行为使用共享 SDK 策略并可以通过 `ZeroSsl.Retry`。 。 。 .

## 常见问题

### 如何安装 @distilled\.cloud/zerossl？

在项目目录运行 npm install @distilled\.cloud/zerossl，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：effect（^4\.1\.2）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @distilled\.cloud/zerossl 支持 TypeScript 吗？

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

### @distilled\.cloud/zerossl 支持 ESM 还是 CommonJS？

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

### @distilled\.cloud/zerossl 可以商用吗？

@distilled\.cloud/zerossl 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @distilled\.cloud/zerossl 的下载量有多少？

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

### @distilled\.cloud/zerossl 还在维护吗？

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

