发送电子邮件是许多 web 应用程序中的常见功能,无论是用于用户注册、密码重置还是营销活动。在本指南中,我们将向您展示如何在 nodemailer 模块的帮助下使用 node.js 发送电子邮件。我们将涵盖从设置项目到发送 html 电子邮件和处理附件的所有内容。 1.开始使用您的 node.js 电子邮件项目首先,您需要设置一个新的 node.js 项目来发送电子邮件。创建项目文件夹 mkdir emailtest cd emailtest登录后复制初始化您的项目创建包含以下内容的 package.json 文件: { "name": "emailtest", "version": "1.0.0", "main": "index.js", "dependencies": { "nodemailer": "^6.0.0" } }登录后复制安装 nodemailer通过运行以下命令安装所需的 nodemailer 模块: npm install登录后复制 2.发送您的第一封电子邮件现在您的项目已设置完毕,让我们发送一封简单的电子邮件。创建一个index.js文件添加以下代码以发送电子邮件: import nodemailer from 'nodemailer'; const transporter = nodemailer.createtransport({ host: 'smtp.freesmtpservers.com', port: 25 }); const mailoptions = { from: '"test email" <test>', to: '[email protected]', subject: 'hello!', text: 'hello world!', html: '<p>hello world!</p>' }; transporter.sendmail(mailoptions, (error, info) => { if (error) { console.log('error:', error); } else { console.log('email sent:', info.response); } });</test>登录后复制运行你的代码使用 node.js 运行代码: node index.js登录后复制您应该会看到电子邮件已发送的确认信息。 3.添加附件到您的电子邮件如果您需要通过电子邮件发送文件,nodemailer 让这一切变得简单。带有附件的示例 const mailoptions = { from: '"test email" <test>', to: '[email protected]', subject: 'hello with attachments!', text: 'please find the attached files.', attachments: [ { filename: 'test.txt', path: './test.txt' // local file }, { filename: 'example.txt', content: 'this is a text file content.' // content as string } ] };</test>登录后复制 4.发送 html 电子邮件html 电子邮件可以通过格式、图像和链接使您的邮件更具吸引力。html 电子邮件示例 const mailoptions = { from: '"test email" <test>', to: '[email protected]', subject: 'hello, html!', html: '<h1>hello world!</h1><p>this is an html email.</p>' };</test>登录后复制 5.处理错误处理错误以确保您的应用程序顺利运行非常重要。错误处理示例 transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log('Error:', error.message); } else { console.log('Email sent:', info.response); } });登录后复制 结论使用 node.js 和 nodemailer 发送电子邮件非常简单。只需几行代码,您就可以发送纯文本或 html 电子邮件、附加文件并高效处理错误。随着您的需求增长,您可以探索更高级的功能,例如与专用电子邮件服务集成和管理异步电子邮件队列。 以上就是掌握 Nodejs 中的电子邮件发送:分步指南的详细内容,更多请关注我的其它相关文章!
标签:电子邮件发送,Nodejs,nodemailer,js,发送,html,分步,error,电子邮件 From: https://www.cnblogs.com/aow054/p/18434266