NimBuild 文档
邮件

邮件系统

基于 Resend 的交易邮件。

概述

NimBuild Starter 使用 Resend 发送交易邮件。业务代码只从 extensions/email 导入隐藏 provider 的统一封装,Resend 具体适配器位于 extensions/email/providers/resend.ts

邮件类型

邮件触发条件实现方式
购买确认支付 webhookextensions/email/templates.ts

配置

RESEND_API_KEY="re_..."
RESEND_FROM_EMAIL="NimBuild <onboarding@resend.dev>"
RESEND_REPLY_TO="support@example.com"

开发模式

未验证发送域名时,可以使用 Resend 的 onboarding@resend.dev 发件人做本地测试,但只能发送到 Resend 账号注册邮箱。发送到其他收件人需要先验证域名。

生产环境

生产环境需要在 Resend 中验证发送域名,并将 RESEND_FROM_EMAIL 设置为该域名下的地址,例如 NimBuild <noreply@mail.example.com>

邮件内容

通用交易邮件通过 extensions/email 导出的 sendEmail() 发送。

错误处理

所有邮件发送都包裹在 try-catch 中。发送失败会记录日志但不会导致应用崩溃。系统返回成功/错误元组而非抛出异常:

const result = await sendEmail({
  to: email,
  subject: "Subject",
  html: "<p>Hello</p>",
});

if (!result.success) {
  console.error(result.error);
}

On this page