const nodemailer = require('nodemailer'); const config = require('./config.json'); async function sendEmail(to, subject, text, html) { const transporter = nodemailer.createTransport({ host: config.smtp.host, port: config.smtp.port, auth: config.smtp.auth, secure: config.smtp.secure, tls: config.smtp.tls }); const mailOptions = { from: config.smtp.auth.user, to: to, subject: subject, text: text, html: html }; try { const info = await transporter.sendMail(mailOptions); console.log('邮件发送成功:', info.messageId); return info; } catch (error) { console.error('邮件发送失败:', error); throw error; } } if (require.main === module) { const args = process.argv.slice(2); const to = args[0] || 'cbed@163.com'; const subject = args[1] || '测试邮件'; const text = args[2] || '这是一封通过 Node.js 发送的测试邮件。'; const html = args[3] || '

这是一封通过 Node.js 发送的测试邮件。

'; sendEmail(to, subject, text, html).catch(console.error); } module.exports = sendEmail;