# @absolutejs/dispatch-resend 中文文档

规范地址：https://npmcn.com/package/%40absolutejs/dispatch-resend/

版本：0\.7\.1
npm 元数据更新时间：2026-11-02T04:45:16.025Z
中文译文更新时间：2026-11-07T08:25:43.105Z
软件包许可：Apache-2\.0

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

原始 npm 页面：https://www.npmjs.com/package/%40absolutejs/dispatch-resend
原文对照：https://npmcn.com/package/%40absolutejs/dispatch-resend/?lang=original
项目主页：https://github.com/absolutejs/dispatch-adapters/tree/main/resend
源码仓库：https://github.com/absolutejs/dispatch-adapters

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

- 包体积（解压后）：75.5 kB，12 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- peer 依赖：resend \>=6\.18\.0 \<7，@absolutejs/dispatch \>=0\.7\.0 \<0\.10，@absolutejs/execution \>=0\.14\.6 \<0\.15
- 首次发布：2026-05-30T20:11:40.437Z
- 最新版本发布：2026-11-02T04:45:15.680Z
- 近 30 天下载量：1986（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：18（近 12 个月 18 个）

## 中文简介

后端后端的EmailAdapter带有证书安全安装效果,签名证据,以及参考方位查询恢复.

## 安装

```sh
npm install @absolutejs/dispatch-resend
```

也可以使用：`pnpm add @absolutejs/dispatch-resend`、`yarn add @absolutejs/dispatch-resend`、`bun add @absolutejs/dispatch-resend`

## README

# @absolutejs/ 发送转发

后端备份 `EmailAdapter` 页:1 [@absolutejs/发送](https://github.com/absolutejs/dispatch)。 。 。 .

**文档 :** [绝对js.com/文档/发送#适应器](https://absolutejs.com/documentation/dispatch#adapters)

## 安装

```sh
bun add @absolutejs/dispatch @absolutejs/dispatch-resend resend
```

## 使用量

```ts
import { Resend } from "resend";
import { createDispatcher } from "@absolutejs/dispatch";
import { createResendAdapter } from "@absolutejs/dispatch-resend";

const resend = new Resend(process.env.RESEND_KEY!);

const dispatcher = createDispatcher({
  email: createResendAdapter({
    client: resend,
    defaultFrom: "no-reply@acme.io",
  }),
});

const result = await dispatcher.email({
  to: "alice@example.com",
  subject: "Welcome to Acme",
  text: "Click here to verify: ...",
  // String metadata becomes Resend tags by default:
  metadata: { campaign: "welcome-v2", priority: "high" },
});

console.log(result.id); // Resend's message id
```

## API 密码

```ts
createResendAdapter({
  client,         // Required — your `new Resend(apiKey)`
  defaultFrom?,   // Required if your messages don't set `from`
  tagsFromMetadata?,  // Customize metadata → Resend tags mapping
})
```

### `tagsFromMetadata`

默认情况下适配器地图 **字符串值** 输入 `message.metadata` 转到 Resend 标签。 非字符串值(数字, 布尔, 对象) 被过滤出 — 需要重新发送 `string` 页:1 两者 `name` 财务报告和审定财务报表 `value`。 。 。 .

覆盖自定义 :

```ts
createResendAdapter({
  client: resend,
  tagsFromMetadata: (metadata) => [
    // Always include the tenant
    ...(typeof metadata.tenant === "string"
      ? [{ name: "tenant", value: metadata.tenant }]
      : []),
    // Drop debug-only entries
  ],
});
```

## 映射错误

重新发送 `{ data, error }` 响应形状变为:

-   `error` 集 − 适配器抛出(`@absolutejs/dispatch` 记录 例外规定 `dispatch.email.send` 间距,起伏 `failed` 计数器, 发送 `dispatch.email.failed` 审计活动).
-   `data.id` 现 —— `DispatchResult.id` = 重传消息 id.
-   `data.id` 缺少 + `DispatchResult.id` 实值 `undefined`, (中文(简体) ), `result.provider` 还是 `'resend'`。 。 。 .

## 许可证

[Apache 2.0 (英语)](https://npmcn.com/package/%40absolutejs/LICENSE)B级基底相接于 绝对JS许可证政策——骑行 `@absolutejs/dispatch` (BSL 等级) (a)和 `resend` (麻省理工学院). 套件还出口 `resendEffectAdapterDescriptor` 财务报告和审定财务报表 `createResendEffectAdapterDriver()` 页:1 `@absolutejs/execution`驱动程序 只有在执行时才接受已解决的证书,要求准确无误 重新发送 API 目的地和 `email.send` 效果,并推进持久效果 (原始内容存档于2018-10-21). idepotency key to Resend. 东道国保留对秘密储存的所有权并提供 窄处 `clientForKey` 在最后供应商边界的工厂.

## 持久效果网络记录证据

效果驱动程序添加一个 `abs_effect` 包含持久效果的再发送标签 ID 并宣布其完整的 Webhook 设置: 回调模板, 标准 Webhooks 头条,支持出行事件, 确切的秘密别名, 最后的验证-事件健康信号, 和签名-事件替换旋转. 主机可以传递精确的原始请求 机身,标准Webhooks头,项目租户身份, 和该项目的准确性 `RESEND_WEBHOOK_SECRET` 改为 `verifyResendEffectWebhook()`它使用 Resend 的 SDK 在返回正常状态之前进行核查 `EffectEvidenceRecord`; 接收者, 发件人、对象、信头和原始有效载荷从未归还储存.

描述符使用 `webhook-query`: 已签名的 webhooks 仍然为主, 而 `createResendEffectQueryDriver()` 只有在 执行保留了原调用返回的确切的Resend电子邮件ID. 执行驱动程序摘录了未保留 供应商的回应。 查询倒数验证取回的电子邮件ID及其 `abs_effect` 标记,然后返回正态证据。 如果一个模糊的网络 调用未返回 ID, 运行时间在解析 API 之前跳过此倒计时 键,并继续等待签名的 webhook 或操作员证据;它从未 重放发送.

全部支援出入境 `email.*` 博客事件证实 `email.send` 效果被Resend所接受,所以正常化的效果结果是 `confirmed_succeeded`。在 `eventType` (计: 实例 `email.delivered`, (中文(简体) ), `email.bounced`,或 `email.failed`) 并且绝不能是 与成功的收件箱发送相混淆。 入境 `email.received`联系人, 域名、 和无效签名的事件被拒绝.

Webhook 签名机密是主机入侵证书,而不是提供者发送 证书。 将一个存放在精确的项目秘密外号下 `RESEND_WEBHOOK_SECRET`; 不将其放置在适配器安装或解析器中 在电子邮件发送时.

## 常见问题

### @absolutejs/dispatch-resend 是什么？

后端后端的EmailAdapter带有证书安全安装效果,签名证据,以及参考方位查询恢复\.

### 如何安装 @absolutejs/dispatch-resend？

在项目目录运行 npm install @absolutejs/dispatch-resend，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：resend（\>=6\.18\.0 \<7）、@absolutejs/dispatch（\>=0\.7\.0 \<0\.10）、@absolutejs/execution（\>=0\.14\.6 \<0\.15）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @absolutejs/dispatch-resend 支持 TypeScript 吗？

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

### @absolutejs/dispatch-resend 支持 ESM 还是 CommonJS？

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

### @absolutejs/dispatch-resend 可以商用吗？

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

### @absolutejs/dispatch-resend 的下载量有多少？

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

### @absolutejs/dispatch-resend 还在维护吗？

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

