本页由英文自动翻译。

阅读英文版
Proxy Mail QA

测试用 v0 构建的应用中的注册和登录邮件

v0 会构建一个 Next.js 应用并部署到 Vercel。让它添加账号,它通常会连接 Supabase 来登录,有时是 Clerk。只有当几个设置与应用的实际运行地址一致时,它们的邮件才对真实用户有效。

更新于

v0 应用中的登录选项

登录方式 用户会收到的邮件 用 Proxy Mail QA 测试
邮箱和密码,使用 Supabase 确认、密码重置、邮箱变更 是
魔法链接或验证码,使用 Supabase 用于登录的链接或验证码 是
邮箱和密码,使用 Clerk 验证码、重置密码验证码 是
Google、GitHub 和其他按钮 登录时没有邮件 否:使用你自己的账号

不确定你的应用用的是哪种?问 v0:“这个应用用的是哪种认证,会发送哪些邮件?”登录方式说明介绍了每个选项的作用。

5 分钟测完每封登录邮件

  1. 部署后打开你的生产地址,而不是 v0 内的预览。
  2. 在 Proxy Mail QA 中创建地址,如果表单要求填写姓名,可以使用生成的身份。
  3. 注册并使用该行中的链接或验证码。确认链接有 Open link 和 Copy link 按钮;验证码有 Copy 按钮。
  4. 然后测试其余部分:退出、重置密码、用新密码登录,并把它保存在该行。
  5. 如果你的团队在上线前会在预览部署上检查改动,就在预览部署上再做一次。

Supabase:要检查的三项设置

1. Site URL 和 Redirect URLs。在你的 Supabase 项目中打开 Authentication → URL Configuration。把 Site URL 设为生产域名,并在 Redirect URLs 下添加你的自定义域名和 https://*-your-team.vercel.app/**(填入你的 Vercel 团队名),让预览部署也能使用。Proxy Mail QA 会标记指向 localhost 的链接,包括验证后才重定向到那里的托管 Supabase 链接。完整指南。

2. 代码中的重定向。注册、魔法链接和重置密码应让 Supabase 把用户送回网站的真实地址,地址来自环境变量或当前页面地址,绝不要硬编码 localhost。

3. 邮件发件人。Supabase 的内置发件服务仅用于开发:每小时只发 2 封邮件,且只发给 Supabase 项目团队成员,所以发往测试地址的邮件根本不会离开 Supabase。在用外部地址测试或上线前,请用 Resend 等服务商设置自定义 SMTP。邮件未送达的其他原因。

Clerk:开发和生产

Clerk 会先在拥有独立用户的开发实例上运行你的应用。上线前,你要创建生产实例,并用 Clerk 列出的 DNS 记录连接你的域名,开发环境中的账号不会迁移过去。请用新地址在生产环境重新注册,并检查验证码能送达且有效。

适用于 v0 的可直接复制的提示词

List every email this app sends: sign-up confirmation, verification code, magic link, password reset, invite and email change. For each, tell me what triggers it, which URL its link points to, and how long its link or code stays valid. Flag anything that uses localhost.
Build every redirect in sign-up, magic link and password reset emails from an environment variable for the site's public URL, falling back to the current page's address. Never hard-code localhost.
Add a Forgot password flow: a page to request the email, and a page to choose a new password that then signs the user in. Show a clear message when the link has expired or was already used, with a button to send a new one.

在你的下一次注册测试中试试

免费版,无需信用卡。创建一个地址,看着验证码或链接送达。

免费创建账号打开应用

常见问题

为什么我的确认链接指向 localhost:3000?

除非你的注册代码请求了 Redirect URLs 列表中的某个重定向地址,否则 Supabase 会根据你的 Site URL 生成链接,而它的初始值是 http://localhost:3000 这个地址。请把 Site URL 设为你的生产域名,并在 Redirect URLs 下添加其他地址。

注册在生产域名上可用,在预览部署上却不行。为什么?

每个 Vercel 预览部署都有自己的地址。在 Supabase 的 Redirect URLs 中添加 https://*-your-team.vercel.app/** 这样的通配符,让预览发出的链接能回到预览。

我可以在 v0 的预览中测试登录吗?

请在已部署的应用上测试。v0 内的预览运行在自己的地址上,通常不在 Supabase 的 Redirect URLs 列表中,所以登录邮件中的链接会回退到 Site URL,而不是返回预览。

查看我们解决的所有邮件测试问题

v0 和 Vercel 是 Vercel, Inc. 的商标。Supabase 是 Supabase, Inc. 的商标。Clerk 是 Clerk, Inc. 的商标。 Proxy Mail QA 是独立产品,与上述商标所有者没有隶属关系,也未获得其认可。

对本页有疑问?

可以用任何语言提问。文档可以立即回答,你也可以把问题发给 Proxy Mail QA 团队,他们会用英文回复。