開發google郵件驗證碼功能
首先要去google 開通兩部驗證
接著在上面搜索裡面輸入 "應用程式"
輸入"官網"點建立
彈出應用程式密碼
$ npm install nodemailer
$ npm install nodemailer-smtp-transport
接下來就是功能
const FROM = 'aaa@gmail.com';
const TO = 'bbb@msn.com';
const transport = nodemailer.createTransport(smtpTransport({
host: 'smtp.gmail.com', // 服务 由于我用的163邮箱
port: 465, // smtp端口 默认无需改动
secure: true,
auth: {
user: FROM, // 用户名
pass: 'xxxxxx' // SMTP授权码
}
}));
//驗證郵箱合理
if (regEmail.test(TO)){
let code = randomFns()
transport.sendMail({
from: FROM, // 發件郵箱
to: TO, // 收件列表
subject: '驗證你的電子郵件', //標題
html: `
<p>你好!</p>
<p>你正在註冊Cocabear社區帳號</p>
<p>你的驗證碼是:<strong style="color: #ff4e2a;">${code}</strong></p>
<p>***該驗證碼5分鐘内有效***</p>` // html 内容
},
function(error, data) {
console.error("error:", error);
assert(!error,500,"發送驗證碼錯誤!")
transport.close();
})
//後續工作
console.log("send success");
}else{
assert(false,422,'請輸入正確郵件格式!')
}
測試後可以發給外郵