在 Web 应用中,发送邮件是一项常见的功能之一。而在 Node.js 中,Nodemailer 是一个开源的邮件发送库。在 Express.js 中,我们可以很方便地使用 Nodemailer 发送邮件。在本文中,将向读者介绍如何在 Express.js 中使用 Nodemailer 发送邮件的技巧。
准备工作
在使用 Nodemailer 发送邮件之前,需要先安装它。可以使用 npm 安装 Nodemailer:
npm install nodemailer
发送普通邮件
使用 Nodemailer 发送普通邮件,只需几行代码即可完成。以下是一个示例代码:
-- -------------------- ---- -------
----- ---------- - ----------------------
----- ----------- - ----------------------------
----- -----------------
----- ----
------- -----
----- -
----- -------
----- ------
-
---
----- ----------- - -
----- -------
--- ---------
-------- -------
----- ----------
--
--------------------------------- ------- ----- -- -
-- ------- -
-------------------
- ---- -
-------------------- - ---------------
-
---在这个例子中,使用 Gmail 的 SMTP 服务器发送邮件,并且需要提供发件人的邮箱和密码。如果你的 Gmail 帐号启用了两步验证,在此之前还需要为应用生成一个密码。邮件的内容包括收件人、主题和文本内容。当邮件发送成功时,将在控制台中输出一条消息。
发送带附件的邮件
发送带附件的邮件比较复杂,需要使用 Nodemailer 的 createTransport 和 mailOptions 方法。以下是一个示例代码:
-- -------------------- ---- -------
----- ---------- - ----------------------
----- ----------- - ----------------------------
----- -----------------
----- ----
------- -----
----- -
----- -------
----- ------
-
---
----- ----------- - -
----- -------
--- ---------
-------- -------
----- -----------
------------ -
-
--------- -----------
-------- ----------
-
-
--
--------------------------------- ------- ----- -- -
-- ------- -
-------------------
- ---- -
-------------------- - ---------------
-
---在这个例子中,需要在邮件选项中添加一个 attachments 属性,属性的值为一个数组,每个元素都是一个附件。每个附件对象包含一个 filename 属性和一个 content 属性,分别代表文件名和文件内容。当邮件发送成功时,将在控制台中输出一条消息。
发送 HTML 邮件
发送 HTML 邮件也比较简单,只需要将邮件内容设置为 HTML 格式,即可发送 HTML 邮件。以下是一个示例代码:
-- -------------------- ---- -------
----- ---------- - ----------------------
----- ----------- - ----------------------------
----- -----------------
----- ----
------- -----
----- -
----- -------
----- ------
-
---
----- ----------- - -
----- -------
--- ---------
-------- -------
----- -------------------
--
--------------------------------- ------- ----- -- -
-- ------- -
-------------------
- ---- -
-------------------- - ---------------
-
---在这个例子中,将邮件内容设置为一个 HTML 标记,邮件将以 HTML 格式发送。当邮件发送成功时,将在控制台中输出一条消息。
小结
在本文中,我们介绍了如何在 Express.js 中使用 Nodemailer 发送邮件。我们向读者提供了三个示例代码,分别是发送普通邮件、发送带附件的邮件和发送 HTML 邮件。希望本文对读者有所帮助,特别是在构建 Web 应用时发送邮件功能的实现。
Source: FunTeaLearn,Please indicate the source for reprints https://funteas.com/post/67821874935627c900f6cae8