以前看别人博客留言或者评论文章时必须填写邮箱信息,感觉甚是麻烦。
后来才知道是为了在博主回复后让访客收到邮件,用心良苦。
于是我也在新增留言和文章评论的接口里,新增了给自己发送邮件提醒的功能。
我用的QQ邮箱,具体如下
一:配置邮箱
设置中开启IMAP服务,获取授权码
二:使用组件发送邮件
安装nodemailer组件,填写相关字段完成发送
let transporter = nodemailer.createTransport({
'host': 'smtp.qq.com', // 主机
'secureConnection': true, // 使用 SSL
'service': 'qq',
'port': 465, // SMTP 端口
'auth': {
'user': '1585437938@qq.com', // 账号
'pass': '上图获取的授权码' // 授权码
}
});
let mailContent = {
from: '1585437938@qq.com', // 发件人地址 灵活填写,我是自己发给自己
to: '1585437938@qq.com', // 收件人地址
subject: '主题内容', // 主题
html: `这里自己拼接,可以是html模式的文本` // html body
};
// 发送邮件
transporter.sendMail(mailContent, (err, info) => {
if (err) {
console.log('发邮件出错了', err);
} else {
console.log('邮件发送成功');
}
});
三:实现效果
我的博客为了不让用户感觉繁琐,不强制访客留下邮箱等个人信息。
访客留言或者评论文章后,我会自己给自己发一封邮件,来实现消息提醒。
实例演示地址:孙权的博客
实例源码:留言板页面代码
四:修改授权码
当时代码写完上传github了,想着我这小网站也没人关注于是带着授权码一块上传了。
然后半个月后噩梦开始了,真有贱人闲的蛋疼拿着我的邮箱批量往外发垃圾邮件。
于是我从新生成授权码,心想旧的授权码该失效了。然后并没有,至少不是实时失效的。
网上查到更改QQ密码,之前的授权码都会失效。尝试了这个办法,旧授权码确实当场失效。
然后重新生成授权码,给接口换上。接口直接上传服务器,该改动不再上传github。