uniapp uni-id 如果是正式项目,需自行实现发送邮件的相关功能

 (3) 使用云对象sendEmailCode 发送邮箱验证码,报错送邮箱验证码失败 Error: 已启动测试模式,直接使用:123456作为邮箱验证码即可。 如果是正式项目,需自行实现发送邮件的相关功能 - DCloud问答

uni-id 没有实现邮箱验证码逻辑,需要的化需要自行接入。

因为uni-id 并没有实现 邮箱验证码逻辑,所以可以先注释掉,uni-id-co文件夹下找到module下的register的register-user-by-email

修改代码为以下代码,即可暂时注释掉邮箱验证码验证 

const {
	postRegister,
	preRegisterWithPassword
} = require('../../lib/utils/register')
const {
	verifyCaptcha
} = require('../../lib/utils/captcha')
const {
	CAPTCHA_SCENE,
	EMAIL_SCENE,
	LOG_TYPE
} = require('../../common/constants')
const {
	verifyEmailCode
} = require('../../lib/utils/verify-code')

/**
 * 通过邮箱+验证码注册普通用户
 * @tutorial https://uniapp.dcloud.net.cn/uniCloud/uni-id-pages.html#register-user-by-email
 * @param {Object} params
 * @param {String} params.email    邮箱
 * @param {String} params.password      密码
 * @param {String} params.nickname    昵称
 * @param {String} params.code  邮箱验证码
 * @param {String} params.inviteCode  邀请码
 * @returns
 */
module.exports = async function(params = {}) {
	const schema = {
		email: 'email',
		password: 'password',
		nickname: {
			required: false,
			type: 'nickname'
		},
		code: { // 设置为非必填
			required: false,
			type: 'string'
		},
		inviteCode: {
			required: false,
			type: 'string'
		}
	}
	this.middleware.validate(params, schema)
	const {
		email,
		password,
		nickname,
		code,
		inviteCode
	} = params

	// 注释掉邮箱验证码验证部分
	// try {
	//   // 验证邮箱验证码,验证不通过时写入失败日志
	//   await verifyEmailCode({
	//     email,
	//     code,
	//     scene: EMAIL_SCENE.REGISTER
	//   })
	// } catch (error) {
	//   await this.middleware.uniIdLog({
	//     data: {
	//       email
	//     },
	//     type: LOG_TYPE.REGISTER,
	//     success: false
	//   })
	//   throw error
	// }

	const {
		user,
		extraData
	} = await preRegisterWithPassword.call(this, {
		user: {
			email
		},
		password
	})
	return postRegister.call(this, {
		user,
		extraData: {
			...extraData,
			nickname,
			email_confirmed: 1
		},
		inviteCode
	})
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值