广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >如何使用nodejs自动发送邮件
  • 252
分享到

如何使用nodejs自动发送邮件

2024-04-02 19:04:59 252人浏览 薄情痞子
摘要

这篇文章主要介绍“如何使用nodejs自动发送邮件”,在日常操作中,相信很多人在如何使用nodejs自动发送邮件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用node

这篇文章主要介绍“如何使用nodejs自动发送邮件”,在日常操作中,相信很多人在如何使用nodejs自动发送邮件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用nodejs自动发送邮件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

实现方案

实现自动发送邮件笔者采用了基于Nodejs生态的nodemailer, 它可以轻松的帮我们发送电子邮件, 官网地址: nodemailer.

如何使用nodejs自动发送邮件

之所以选择nodemailer是因为它提供了非常灵活的自定义配置和安全保障, 比如:

  • 具有零依赖关系的单一模块, 代码容易审核,没有死角

  • Unicode支持使用任何字符,包括表情符号?

  • 邮件内容既支持普通文本, 还支持自定义html

  • 支持自定义附件

  • 支持安全可靠的SSL/STARTTLS邮件发送

  • 支持自定义插件处理邮件消息

还有很多特点笔者就不一一介绍了. 接下来我们来看一个笔者简化并翻译的官网案例:

"use strict"; const nodemailer = require("nodemailer");  // 使用async..await 创建执行函数 async function main() {   // 如果你没有一个真实邮箱的话可以使用该方法创建一个测试邮箱   let testAccount = await nodemailer.createTestAccount();    // 创建Nodemailer传输器 SMTP 或者 其他 运输机制   let transporter = nodemailer.createTransport({     host: "smtp.ethereal.email", // 第三方邮箱的主机地址     port: 587,     secure: false, // true for 465, false for other ports     auth: {       user: testAccount.user, // 发送方邮箱的账号       pass: testAccount.pass, // 邮箱授权密码     },   });    // 定义transport对象并发送邮件   let info = await transporter.sendMail({     from: '"Dooring ?" <dooring2021@163.com>', // 发送方邮箱的账号     to: "bar@example.com, baz@example.com", // 邮箱接受者的账号     subject: "Hello Dooring", // Subject line     text: "H5-Dooring?", // 文本内容     html: "欢迎注册h6.dooring.cn, 您的邮箱验证码是:<b>${emailCode}</b>", // html 内容, 如果设置了html内容, 将忽略text内容   }); }  main().catch(console.error);

以上代码是发送带有纯文本和HTML正文的电子邮件的完整示例. 笔者在代码上做了详细的翻译, 我们可以总结出要想发送邮件, 我们需要如下3个步骤:

  • 创建Nodemailer传输器 SMTP 或者其他运输机制

  • 设置 Message 选项(将什么消息发送给谁)

  • 使用先前创建的传输器的sendMail()方法传递消息对象

宏观的使用流程我们知道了, 接下来我们落实到每一个技术功能点来实现.我们需要关注如下几个核心点:

  • 如何设置 host

  • 如何设置 auth

  • 如何配置 Message 选项

解答了以上3个问题, 我们就能灵活的使用Nodemailer发送自定义邮件了.

如何设置host, port, secure

这里笔者拿网易邮箱来举例. 比如我们想用我们自己的网易邮箱给用户发送邮件, 我们需要先注册一个用于发送邮件的网易邮箱,  比如dooring2021@163.com. 由于我们采用SMTP传输器 , 所以在邮箱主页我们找到如下选项并设置:

如何使用nodejs自动发送邮件

在该页面下方我们可以找到对应的host, 如下:

如何使用nodejs自动发送邮件

关于port和secure, 我们采用默认配置即可, 设置secure为true,表示端口默认使用465. 详细配置如下:

如何使用nodejs自动发送邮件

如何设置auth

auth我们在上一步的操作中已经涉及到了, 我们在开启IMAP/SMTP服务时会提示保存邮箱授权码, 这里的授权码就是auth.pass的值,  auth.user表示当前授权的邮箱.

如何设置Message

消息配置是我们邮箱服务比较重要的部分, 官方提供了如下几个配置说明:

如何使用nodejs自动发送邮件

这里笔者给大家详细介绍一下:

  • from  发件人的电子邮件地址。所有电子邮件地址都可以是纯'sender@server.com“或格式化”&lsquo;发送者名称&rsquo;sender@server.com'

  • to 逗号分隔的列表或收件人的电子邮件地址的排列

  • cc 逗号分隔的列表或将显示在“抄送”字段中的收件人电子邮件地址数组

  • bcc 逗号分隔的列表或将显示在“密件抄送:”字段中的收件人电子邮件地址数组

  • subject 电子邮件的主题

  • text 消息的文本内容

  • html 消息的html内容, 如果定义了html, 将忽略text

  • attachments 附件内容

熟悉了以上配置之后我们基本可以配置满足80%场景的邮件发送需求了. 这里我们来看一个设置Message的简单案例:

await transporter.sendMail({   from: '"v6.dooring" <dooring2021@163.com>', // sender address   to: 'xujiang156@qq.com', // list of receivers   subject: 'welcome to use dooring', // Subject line   text: 'Hello world?', // plain text body   html: `欢迎注册v6.dooring, 您的邮箱验证码是:<b>${emailCode}</b>`, // html body })

该案例是使用dooring邮箱给一个普通用户发送邮箱验证码的场景, 是不是很熟悉呢? 这个场景目前被应用在很多登录注册相关的场景中.  接下来看看实际的效果:

如何使用nodejs自动发送邮件

到此,关于“如何使用nodejs自动发送邮件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 如何使用nodejs自动发送邮件

本文链接: https://www.lsjlt.com/news/73666.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用nodejs自动发送邮件
    这篇文章主要介绍“如何使用nodejs自动发送邮件”,在日常操作中,相信很多人在如何使用nodejs自动发送邮件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用node...
    99+
    2022-10-19
  • Nodejs+nodemailer如何发送邮件
    这篇文章给大家分享的是有关Nodejs+nodemailer如何发送邮件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。特点零依赖的单个模块- 代码易于审核,因为没有暗角。【推荐学...
    99+
    2022-10-19
  • Python如何实现自动发送邮件
    目录自动发送邮件使用邮箱的第一步一份邮件的组成正式发送一份邮件批量发送邮件自动发送邮件 我们把报表做出来以后一般都是需要发给别人查看,对于一些每天需要发的报表或者是需要一次发送多份的...
    99+
    2022-11-12
  • nodejs如何实现邮件发送服务
    这篇文章将为大家详细讲解有关nodejs如何实现邮件发送服务,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前段时间,想用python实现发送邮件的服务,用的是smtp,但...
    99+
    2022-10-19
  • Python如何实现自动化邮件发送
    今天就跟大家聊聊有关Python如何实现自动化邮件发送,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用Python实现自动化邮件发送,可以让你摆脱繁琐的重复性业务,可以节省非常多的...
    99+
    2023-06-26
  • Python实现自动化发送邮件
    目录开门见山自动化发送邮件SMTP 介绍开启SMTP服务邮件的属性配置发送文本邮件发送HTML邮件发送附件邮件后记总结开门见山 自动化测试过程中,一般测试结果都会以邮件的形式发送给相...
    99+
    2022-11-12
  • 如何使用Go语言和Redis实现自动邮件发送
    如何使用Go语言和Redis实现自动邮件发送邮件发送是现代社会中非常常见的一项功能,许多应用程序都需要使用邮件来发送通知、验证用户身份、接收用户反馈等。本文将介绍如何使用Go语言和Redis实现自动邮件发送功能,并提供详细的代码示例。一、准...
    99+
    2023-10-26
    Go语言 redis 邮件发送
  • 如何用Python自动生成报表以邮件发送
    如何用Python自动生成报表以邮件发送,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。数据分析师肯定每天都被各种各样的数据数据报表搞得焦头烂额,老板的,运营的、...
    99+
    2023-06-17
  • PHPlaravel使用自定义邮件类实现发送邮件
    当登录邮箱为腾讯企业邮箱的时候。 Phpmailer发送邮件就不好用了,具体哪里不好用,我没真没找到。 但是,邮件得发啊,怎么办呢? 我这里搞了一个自定义的发送邮件类,腾讯企业邮箱也...
    99+
    2022-11-13
    PHP laravel发送邮件 PHP 发送邮件 PHP laravel
  • linux下如何用脚本自动发送文本mail邮件
    这篇文章主要介绍“linux下如何用脚本自动发送文本mail邮件”,在日常操作中,相信很多人在linux下如何用脚本自动发送文本mail邮件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux下如何用脚本...
    99+
    2023-06-09
  • Shell中怎么实现自动发送邮件
    这期内容当中小编将会给大家带来有关Shell中怎么实现自动发送邮件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、编辑用户Home目录下的.muttrc文件,设置发信环境。代码如下:# cat /roo...
    99+
    2023-06-09
  • Python怎么实现自动化发送邮件
    这期内容当中小编将会给大家带来有关Python怎么实现自动化发送邮件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚...
    99+
    2023-06-26
  • 如何使用node发送qq邮件
    这篇文章主要介绍如何使用node发送qq邮件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!使用nodemailer包let transporter = ...
    99+
    2022-10-19
  • 如何使用java来发送邮件
    这篇文章主要介绍了如何使用java来发送邮件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用java来发送邮件文章都会有所收获,下面我们一起来看看吧。 首先看一下实现的...
    99+
    2022-10-19
  • nodejs模块nodemailer基本使用-邮件发送示例(支持附件)
    nodemailer是nodejs中的邮件发送模块,本文使用的版本为2.5.0 --下载模块 npm install nodemailer npm下载模块后,在项目中引入就可以使用: var no...
    99+
    2022-06-04
    示例 邮件发送 模块
  • Python实战之自动发送邮件的实现
    目录1.开启SMTP服务2.准备3.编写脚本4.小例子自动发送邮件能应用于许多场景,比如我想要知道股票策略中的股票池是否有实时的更新,这时候如果再拉一遍数据,跑一遍脚本,实在是太浪费...
    99+
    2022-11-13
  • springboot实现自动邮件发送任务详解
    目录1.导入jar包2.配置文件3.测试复杂的邮件发送springboot可以很容易实现邮件的发送 具体实现步骤: 1.导入jar包 <dependency> &...
    99+
    2022-11-13
  • springboot怎么实现自动邮件发送任务
    这篇“springboot怎么实现自动邮件发送任务”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“springboot怎么实现...
    99+
    2023-06-29
  • PHP使用laravel邮件服务发送邮件
    目录配置生成 Mailables编写 Mailables配置发件人配置 Laravel 的邮件服务可以通过 config/mail.php 配置文件进行配置。 邮件中的每一项都在配置...
    99+
    2023-03-06
    PHP laravel发送邮件 PHP发送邮件 PHP邮件服务
  • win10邮件如何发送
    本篇内容主要讲解“win10邮件如何发送”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“win10邮件如何发送”吧!win10邮件发送方法:点击“开始”打开“邮件” 点击“新邮件” 填写“收件人、...
    99+
    2023-07-01
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作