跳到主要内容

邮箱验证码登录

使用邮箱验证码登录,您可以让用户通过「邮箱+邮箱验证码」的方式登录

前置动作

开启邮箱登录

  1. 前往 云开发平台/身份认证/登录方式
  2. 在登录方式列表中,选择「邮箱验证码登录」方式,点击「配置发件人」
  3. 配置邮箱发件人 SMTP 配置后,开启邮箱登录

常见邮箱 SMTP 配置

邮箱SMTP 服务器主机SMTP 服务器端口SMTP 安全模式
qq 邮箱smtp.qq.com465/578SSL(465)/STARTSSL(587)
腾讯企业邮箱smtp.exmail.qq.com465SSL
163 邮箱smtp.163.com465SSL
gmailsmtp.gmail.com465/578SSL(465)/STARTSSL(587)

注册用户

注册用户流程请参考 用户注册

邮箱验证码登录

Auth.signInWithEmail 方法用于 邮箱验证码登录

const app = cloudbase.init({
env: "xxxx-yyy",
region: "ap-shanghai", // 不传默认为上海地域
});

const auth = app.auth();

const email = "test@example.com";

// 第一步:用户点击获取验证码,调用如下方法发送邮箱验证码,将 verificationInfo 存储到全局,方便第三步作为参数输入
const verificationInfo = await auth.getVerification({
email: email,
});

// 第二步:等待用户在页面中输入邮箱验证码
const verificationCode = userInputCode; // 6位验证码

// 第三步:待用户输入完验证码之后,验证邮箱验证码,并登录
await auth.signInWithEmail({
verificationInfo,
verificationCode, // 用户输入的邮箱验证码
email: email, // 用户邮箱
});

常见邮箱服务器

QQ 邮箱

第 1 步:登录 QQ 邮箱

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

第 2 步:开启 IMAP/SMTP 服务

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

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

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

注意

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

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

使用 QQ 邮箱作为发件人地址和 SMTP 账号用户名,使用第 2 步的授权码作为 SMTP 账号密码。

gmail 邮箱

第 1 步:登录 gmail 邮箱

gamil 邮箱默认已开启 IMAP/SMTP 服务,此步骤验证邮箱是否可用

第 2 步:开启 google 账号两步验证

https://myaccount.google.com/security?utm_source=OGB&utm_medium=app

点击安全(Security)-->两步验证(2-Step Verification)开启

第 3 步:开启 google 账号 app 密码

https://support.google.com/accounts/answer/185833?hl=zh-Hans

第 4 步:配置云开发平台邮箱登录 SMTP

邮箱SMTP 服务器主机
发件人你的 gmail 邮箱
SMTP 服务器主机smtp.gmail.com
端口465
SMTP 账号用户名你的 gmail 邮箱
SMTP 账号密码第 3 步的 app 密码
SMTP 安全模式SSL