用nodejs写一个邮件机器人

昨天就开始想使用nodemailer来实现一个发送邮件的功能,不过发现了很多个坑,网上给的资料也很杂很乱,所以决定写一篇真正能用的来帮助大家减少弯路

首先,我们先来看下代码,如上所示.

步骤:

下载npm包:

npm install nodemailer --save

  2.编写类似于以上的代码:在这里面,我

使用smtp

来登陆我的邮箱,利用nodemailer.createTransporter来创建连接

  3.编写邮件内容,邮件各个属性的意义看注释

  4.利用transport.sendMail函数来发送邮件.

常见错误:

  如果使用QQ邮箱的话,你的密码应该是授权码。首先你得开启SMTP服务,步骤如下:

    1.打开你的QQ邮箱

    2.点击设置,并且选择账户

    3.往下拉,找到第一个,POP3/SMTP,点击开启

    4.开启成功后,点击

生成授权码

    5.得到授权码后,pass对应的是授权码,将其填入即可.

  然后你使用126邮箱话呢,一样的道理,得先去开启POP3/SMTP服务,开启页面如下

  然后点击下面的客户端授权密码,获取授权码,然后填到pass里即可(不过用126邮箱有个坑,就是你发的内容会被视为垃圾邮件,不给你发送,除非你发给自己)

  当然,使用126邮箱的话呢,那个createTransport里的host要改为"smtp.126.com"

nodemailer还有一个神奇的功能,可以

发送附件

(具体代码如下):

以上就是整个流程了~~

更加详细的功能可以去https://github.com/nodemailer/nodemailer上看.

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JetpropelledSnake

Linux学习笔记之Linux下Redis的安装和部署

Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的v...

902
来自专栏FreeBuf

TinyShop缓存文件获取WebShell之0day

TinyShop是一款电子商务系统(网店系统),适合企业及个人快速构建个性化网上商店。系统是基于Tiny(自主研发)框架开发的,使系统更加的安全、快捷、稳定、高...

2449
来自专栏优启梦

emlog后台登录地址加密

这几天在写YoungxjTools新版前端,所以没怎么发教程。该灵感来自wp后台登录地址加密,按照该教程操作成功后可有效避免软件批量扫描爆破后台

53913
来自专栏黑白安全

文件上传漏洞:突破JS验证详解

关于文件上传漏洞不多说了吧,搞web安全的都应该接触过,在上传漏洞中我们常碰到的一种js验证比较烦人,对于网站是否启用的js验证的判断方法,无法就是利用它的判断...

1753
来自专栏GreenLeaves

Oracle 数据库、表、方案的逻辑备份与恢复

数据库(表)的逻辑备份与恢复 逻辑备份是指使用工具export将数据对象的结构和数据导出到文件的过程,逻辑恢复是指当数据库对象被破坏而使用工具import利用备...

2138
来自专栏小尘哥的专栏

springboot2.x中的服务监控之邮件预警

以下以QQ邮箱为例(163等邮箱都大差不差) 登录后进入“邮箱设置”-->“帐户”--》往下拉--》开启POP3/SMTP

1372
来自专栏C/C++基础

Linux命令(40)——nohup命令

nohup的作用可以将程序以忽略挂起信号(SIGHUP)的方式运行。常见的用法是和&命令一同使用,将命令放置到后台运行,即使终端挂掉,进程会忽略挂起信号,继续运...

1132
来自专栏张善友的专栏

ASP.NET 2.0 中 Web 事件

ASP.NET 2.0 还提供了全功能的应用程序监视和健康监视。这个系统是由一个完全可扩展事件模型和一个能将事件发送到多种接收器的事件引擎组成的。举例来说,您可...

2137
来自专栏Youngxj

emlog后台登录地址加密

4608
来自专栏伦少的博客

通过offsets.retention.minutes设置kafka offset的过期时间

6483

扫码关注云+社区

领取腾讯云代金券