Videofly Docs

登录配置

如何配置 Google 登录和邮箱登录

VideoFly 内置了强大的用户认证系统,支持 Google 账号一键登录邮箱验证码登录(Magic Link)

本指南将手把手教您如何申请这些服务所需的密钥,并配置到您的网站中。

配置完成后,您的用户就可以安全地注册和登录您的网站了。

1. 配置 Google 登录

使用 Google 登录需要您在 Google Cloud Platform (GCP) 上创建一个项目并申请 OAuth 凭证。

第一步:创建 Google Cloud 项目

  1. 访问 Google Cloud Console
  2. 点击左上角的项目选择器,然后点击 "New Project" (新建项目)
  3. 输入项目名称(例如 "My Video App"),然后点击 "Create" (创建)

第二步:配置 OAuth 同意屏幕

  1. 在左侧菜单中,找到 "APIs & Services" (API 和服务) > "OAuth consent screen" (OAuth 同意屏幕)
  2. 选择 "External" (外部),然后点击 "Create" (创建)
  3. 填写应用信息:
    • App name: 您的应用名称(用户登录时会看到)。
    • User support email: 您的支持邮箱。
    • Developer contact information: 您的联系邮箱。
  4. 点击 "Save and Continue"
  5. 在 "Scopes" 页面,直接点击 "Save and Continue"(默认即可)。
  6. 在 "Test users" 页面,如果您处于测试阶段,可以添加自己的邮箱;或者发布应用以允许所有人登录。

第三步:获取 Client ID 和 Client Secret

  1. 在左侧菜单中,点击 "Credentials" (凭证)
  2. 点击顶部的 "+ CREATE CREDENTIALS" > "OAuth client ID"
  3. Application type 选择 "Web application"
  4. Name 填写 "Next.js App" 或任意名称。
  5. Authorized JavaScript origins (己授权的 JavaScript 来源):
    • 本地开发填写: http://localhost:3000
    • 生产环境填写: https://您的域名.com
  6. Authorized redirect URIs (已授权的重定向 URI):
    • 本地开发填写: http://localhost:3000/api/auth/callback/google
    • 生产环境填写: https://您的域名.com/api/auth/callback/google
  7. 点击 "Create"
  8. 弹出的窗口中会显示 Client IDClient Secret

第四步:填入环境变量

打开项目根目录下的 .env.local 文件,填入刚才获取的密钥:

GOOGLE_CLIENT_ID="您的 Client ID"
GOOGLE_CLIENT_SECRET="您的 Client Secret"

VideoFly 使用 Resend 发送登录邮件。这是一种现代、高到达率的邮件服务。

第一步:注册 Resend 账号

  1. 访问 Resend 并注册账号。
  2. 在 Dashboard 中,您会看到一个引导界面。

第二步:获取 API Key

  1. 点击左侧菜单的 "API Keys"
  2. 点击 "Create API Key"
  3. 输入名称(例如 "Production"),权限选择 "User Sending Access" 或 "Full Access"。
  4. 复制生成的 API Key (以 re_ 开头)。

第三步:验证发信域名 (可选但推荐)

如果您想使用自己的域名(如 noreply@yourdomain.com)发送邮件:

  1. 点击左侧 "Domains" > "Add Domain"
  2. 输入您的域名。
  3. Resend 会提供一些 DNS 记录(DKIM, SPF, DMARC)。
  4. 登录您的域名域名服务商(如阿里云、GoDaddy、Cloudflare),添加这些 DNS 记录。
  5. 点击 "Verify Status" 等待验证通过。

第四步:填入环境变量

打开项目根目录下的 .env.local 文件:

# Resend API Key
RESEND_API_KEY="re_xxxxxxxx"
 
# 发件人邮箱 (如果是测试模式,必须使用 Resend 提供的测试邮箱,如 onboarding@resend.dev)
RESEND_FROM="onboarding@resend.dev"

3. 下一步

配置完成后,重启您的开发服务器:

pnpm dev

现在,点击网站右上角的 "登录" 按钮,您应该可以看到 Google 登录和邮箱登录都已经可以正常工作了!