first commit
This commit is contained in:
41
src/utils/mailer.ts
Normal file
41
src/utils/mailer.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
import nodemailer from 'nodemailer';
|
||||
import config from '../config';
|
||||
|
||||
|
||||
class Mailer {
|
||||
transporter: any;
|
||||
|
||||
constructor() {
|
||||
this.transporter = nodemailer.createTransport(config.mailer);
|
||||
this.verify();
|
||||
}
|
||||
|
||||
|
||||
async verify() {
|
||||
try {
|
||||
await this.transporter.verify();
|
||||
console.log("✅ 邮件服务已经初始化成功...");
|
||||
} catch (err) {
|
||||
console.error("❌ 邮件服务初始化失败: ", err);
|
||||
}
|
||||
}
|
||||
|
||||
async send() {
|
||||
console.log('准备发送邮件通知!');
|
||||
try {
|
||||
const result = await this.transporter.sendMail({
|
||||
from: '2271608011@qq.com', // sender address
|
||||
to: "2271608011@qq.com", // list of recipients
|
||||
subject: "小🐰碎碎念 - 更新了!", // subject line
|
||||
html: `您关注的博主,更新啦!<a href="${config.page}">抖音主页</a>`
|
||||
});
|
||||
|
||||
console.log('✅ 邮件发送成功:', result);
|
||||
} catch (err) {
|
||||
console.error('❌ 邮件发送失败:', err);
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default new Mailer
|
||||
Reference in New Issue
Block a user