admin管理员组

文章数量:1529456

叔叔阿姨都过520了,我在准备我的六一

项目准备

这个项目不需要女朋友

1.两个邮箱账号,一个作为收件方,一个作为发送方

2.node环境

3.一台电脑 。。。。。

邮箱设置

这里以QQ邮箱为例 (设置-账户


往下 翻 点开启 (我已开启)
之后会让你发验证信息,得到一串授权码


项目
npm init -y
npm i nodemailer

新建文件 封装工具类 sendEmail.js

const nodemailer = require('nodemailer')

let transporter = nodemailer.createTransport({
    host: 'smtp.qq',
    secure: true,
    auth: {
        user: '发送@qq',
        pass: '授权码' 
    }
});

module.exports =  function fn(email, code){
     return new Promise((resolve, reject) => {
        transporter.sendMail({
            from: '发送@qq',
            to: email, 
            subject: '网站账户注册验证码',
            html: `   
            <p>网站账户注册验证码:</p>
        <span style="font-size: 18px; color: red">` + code + `</span>`
			// 可自行排版
        }, function (err, data) {
            if (err) {
                reject(err)
            } else {
                resolve({
                    code:200,
                    data
                })
            }
        });
    })
}

入口文件 main.js

const sendEmail = require('./sendEmail.js')


sendEmail('接受邮箱', MathRand()).then(res => {
    console.log(res)
})


function MathRand() { // 随机六位数
    var Num = "";
    for (var i = 0; i < 6; i++) {
        Num += Math.floor(Math.random() * 10);
    };
    return Num
}

运行
node main.js

我是QQ邮箱发送方,163邮箱是接受方

最后这个跟接口和redis结合就可以完成简单的邮箱登入功能。

本文标签: 验证码邮箱node