Express.js 中使用 Nodemailer 发送邮件的技巧

阅读时长 5 分钟读完

在 Web 应用中,发送邮件是一项常见的功能之一。而在 Node.js 中,Nodemailer 是一个开源的邮件发送库。在 Express.js 中,我们可以很方便地使用 Nodemailer 发送邮件。在本文中,将向读者介绍如何在 Express.js 中使用 Nodemailer 发送邮件的技巧。

准备工作

在使用 Nodemailer 发送邮件之前,需要先安装它。可以使用 npm 安装 Nodemailer:

发送普通邮件

使用 Nodemailer 发送普通邮件,只需几行代码即可完成。以下是一个示例代码:

-- -------------------- ---- -------
----- ---------- - ----------------------

----- ----------- - ----------------------------
    ----- -----------------
    ----- ----
    ------- -----
    ----- -
        ----- -------
        ----- ------
    -
---

----- ----------- - -
    ----- -------
    --- ---------
    -------- -------
    ----- ----------
--

--------------------------------- ------- ----- -- -
    -- ------- -
        -------------------
    - ---- -
        -------------------- - ---------------
    -
---

在这个例子中,使用 Gmail 的 SMTP 服务器发送邮件,并且需要提供发件人的邮箱和密码。如果你的 Gmail 帐号启用了两步验证,在此之前还需要为应用生成一个密码。邮件的内容包括收件人、主题和文本内容。当邮件发送成功时,将在控制台中输出一条消息。

发送带附件的邮件

发送带附件的邮件比较复杂,需要使用 Nodemailer 的 createTransportmailOptions 方法。以下是一个示例代码:

-- -------------------- ---- -------
----- ---------- - ----------------------

----- ----------- - ----------------------------
    ----- -----------------
    ----- ----
    ------- -----
    ----- -
        ----- -------
        ----- ------
    -
---

----- ----------- - -
    ----- -------
    --- ---------
    -------- -------
    ----- -----------
    ------------ -
        -
            --------- -----------
            -------- ----------
        -
    -
--

--------------------------------- ------- ----- -- -
    -- ------- -
        -------------------
    - ---- -
        -------------------- - ---------------
    -
---

在这个例子中,需要在邮件选项中添加一个 attachments 属性,属性的值为一个数组,每个元素都是一个附件。每个附件对象包含一个 filename 属性和一个 content 属性,分别代表文件名和文件内容。当邮件发送成功时,将在控制台中输出一条消息。

发送 HTML 邮件

发送 HTML 邮件也比较简单,只需要将邮件内容设置为 HTML 格式,即可发送 HTML 邮件。以下是一个示例代码:

-- -------------------- ---- -------
----- ---------- - ----------------------

----- ----------- - ----------------------------
    ----- -----------------
    ----- ----
    ------- -----
    ----- -
        ----- -------
        ----- ------
    -
---

----- ----------- - -
    ----- -------
    --- ---------
    -------- -------
    ----- -------------------
--

--------------------------------- ------- ----- -- -
    -- ------- -
        -------------------
    - ---- -
        -------------------- - ---------------
    -
---

在这个例子中,将邮件内容设置为一个 HTML 标记,邮件将以 HTML 格式发送。当邮件发送成功时,将在控制台中输出一条消息。

小结

在本文中,我们介绍了如何在 Express.js 中使用 Nodemailer 发送邮件。我们向读者提供了三个示例代码,分别是发送普通邮件、发送带附件的邮件和发送 HTML 邮件。希望本文对读者有所帮助,特别是在构建 Web 应用时发送邮件功能的实现。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67821874935627c900f6cae8

纠错
反馈