EasyStarter logoEasyStarter
邮件服务

Resend 邮件服务

使用 Resend 在线上和本地发送真实邮件

Resend 邮件服务

Resend 通过 API Key 发送邮件。配置完成后,用户可以在自己的邮箱中收到注册验证、密码重置和邮箱验证码邮件。

线上开启邮件发送

注册 Resend 并获取 API Key

  1. 前往 resend.com 注册账号
  2. 登录后进入 API Keys 页面
  3. 点击 Create API Key
  4. 权限选择 Sending access
  5. 创建后立即复制 API Key

API Key 以 re_ 开头,并且只会展示一次,请妥善保存。

验证发件人域名

  1. 在 Resend 中进入 Domains 页面
  2. 点击 Add Domain,填写你的发件域名
  3. 按页面提示把 DNS 记录添加到域名服务商
  4. 回到 Resend,点击 Verify DNS Records
  5. 等待域名状态验证通过

验证通过后,可以使用 noreply@yourdomain.com 这样的地址发送邮件。

填写线上配置

RESEND_API_KEY 填入 apps/server/.env.production

apps/server/.env.production
RESEND_API_KEY=re_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

然后在 packages/app-config/src/app-config.ts 中选择 Resend,并填写已经验证的域名:

packages/app-config/src/app-config.ts
email: {
  provider: "resend",
  from: {
    localPart: "noreply",
    domain: "yourdomain.com",
  },
},

部署并收取测试邮件

推送生产环境变量并正常部署服务端。部署完成后,使用一个真实邮箱触发注册验证、忘记密码或邮箱验证码。

收到邮件即表示线上邮件发送已经生效;如果暂时没有看到,请检查垃圾邮件目录和 Resend Logs。

本地调试并收到真实邮件

把同一个 RESEND_API_KEY 填入 apps/server/.dev.vars

apps/server/.dev.vars
RESEND_API_KEY=re_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

确认邮件服务商为 resend,重启本地服务端,然后触发注册验证、忘记密码或邮箱验证码。邮件会直接发送到你填写的测试邮箱。

Resend 测试阶段可以先向自己的 Resend 注册邮箱发送邮件;向其他用户发送前,需要先完成发件域名验证。如果没有收到,请检查垃圾邮件目录和 Resend Logs。