OAuth 第三方登录

接入 OAuth 登录

NuxtBase 也同时提供了 Github 和 Google 的第三方 OAuth 登录。

邮箱登录注册界面

你需要在 supabase 的后台去开启,默认supabase只开启了邮件登录功能。

OAuth登录设置

如果你使用的是MemfireDB,Google的OAuth登录是不可用的,因为众所周知的网络问题。

开启 Github 登录

在「用户认证」-「服务商」中启用 Github,并且填入 Github 提供的 Client ID 和 Client Secret,就可以实现 Github 的登录。

Github OAuth设置

要获取 Github 的 Client ID 和 Secret:

  1. 登录 Github 账号
  2. 进入 Settings -> Developer settings -> OAuth Apps
  3. 点击"New OAuth App"创建应用
  4. 填写应用信息:
    • Application name: 你的应用名称
    • Homepage URL: 你的网站地址
    • Authorization callback URL: Supabase 提供的回调地址
  5. 创建完成后即可获得 Client ID 和 Secret

开启 Google 登录

Google OAuth设置

要启用 Google OAuth 登录:

  1. 访问 Google Cloud Console
  2. 创建一个新项目或选择已有项目
  3. 启用 OAuth consent screen
  4. 在"Credentials"页面创建 OAuth client ID
  5. 选择"Web application"类型
  6. 添加授权的重定向 URI(从 Supabase 后台获取)
  7. 获取 Client ID 和 Client secret
  8. 将这些凭据填入 Supabase 的 Google Provider 设置中

注意: 如果你使用国内的 supabase 服务商(例如 MemfiredDB) 部署,建议不要启用 Google 登录,因为网络限制可能导致无法正常使用。