跳到主要内容

邮箱登录

使用邮箱登录,您可以让您的用户使用自己的邮箱和密码注册、登录 CloudBase,并且还可以更新登录使用的邮箱和密码

开通邮箱登录#

第 1 步:开启邮箱登录#

进入 云开发 CloudBase 控制台,在 登录授权 设置页面中,开启邮箱登录:

第 2 步:配置发件邮箱#

打开右侧「配置发件人」页面,填入您邮箱的 SMTP 账号信息

第 3 步:设置应用名称及自动跳转链接#

打开右侧「应用配置」页面,设置您的应用名称自动跳转链接

tip
  • 您设置的应用名称将会出现在验证邮件的内容中;
  • CloudBase 发送的邮件中会包含一个 URL,用户打开邮件中的 URL 后,会自动跳转到您设置的自动跳转链接

登录流程#

第 1 步:初始化 SDK#

import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({  env: "your-env-id"});

第 2 步:使用邮箱注册账号#

首先需要用户填入邮箱,获取验证码。

// 假设用户填入的邮箱为 test@example.comconst email = "test@example.com";const verification = await auth.getVerification({  email: email});

调用注册接口之后,CloudBase 会使用您预先设置的邮箱,发送一封验证邮件到用户的邮箱。邮件中包含验证码,用户进一步输入验证码后,调用下面的接口验证验证码的正确性。

// 假设用户输入的验证码为 000000const verificationCode = "000000";// 验证验证码的正确性const verificationTokenRes = await auth.verify({  verification_id: verification.verification_id,  verification_code: verificationCode});

第 3 步:使用邮箱注册并登录 CloudBase#

// 如果用户已经存在,则登录if (verification.is_user) {  await auth.signIn({    username: email,    verification_token: verificationTokenRes.verification_token  });} else {  // 否则,则注册新用户,注册新用户时,可以设置密码,用户名  // 备注:signUp 成功后,会自动登录  await auth.signUp({    email: email,    verification_code: verificationCode,    verification_token: verificationTokenRes.verification_token,    // 可选,设置用户名    username: "userFromEmail",    // 可选,设置密码    password: "password123"  });}
密码强度要求

密码长度不小于 8 位,不大于 32 位,需要包含字母和数字。

使用 QQ 邮箱配置邮箱登录#

第 1 步:登录 QQ 邮箱#

进入 QQ 邮箱首页,登录您的 QQ 邮箱。

第 2 步:开启 IMAP/SMTP 服务#

登录邮箱后,进入「设置-账户」:

然后,在「账户」设置中,找到「开启服务」设置项,开启 IMAP/SMTP 服务:

开启成功后,请保存您的邮箱登录授权码:

注意

您也可以开启 POP3/SMTP 服务,两种服务的授权码都可以作为第 3 步的 SMTP 账号密码。

第 3 步:配置 QQ 邮箱作为发件人#

进入 云开发 CloudBase 控制台,在 登录授权 页面中,打开右侧「配置发件人」页面,选择 QQ 邮箱作为邮箱服务,使用 QQ 邮箱作为发件人地址和 SMTP 账号用户名,使用第 2 步的授权码作为 SMTP 账号密码。