利用Node.JS实现邮件发送功能


Posted in Javascript onOctober 21, 2016

第一步、配置篇

首先需要安装nodemailer库

npm install nodemailer//默认会安装最新的版本。

关于这个库的文档参见nodemailer

第二步、库的一些使用介绍

这个库使用方法很简单的。首先是要创建一个用于发送邮件的实例

var transporter = nodemailer.createTransport(transport[, defaults])

transport参数属性

属性太多了就只写一些关键的属性

     port:连接的端口号,一般就是465

     host:你用于发送邮件的服务器的host,比如163的host是stmp.163.com

     auth:这个就是和老版本不一样的地方了。新版本是用一个字面量存储用户名和密码。注意你的邮箱要开启stmp。

     user:用户名

     pass:密码。如果你的163设置了第三方登录密码的话这里要填你的第三方登录密码、

设置好了这些就可以使用啦~这里贴上我的设置

var smtpConfig = {
 host: 'smtp.163.com',
 port: 465,
 auth: {
  user: 'xxxx',
  pass: 'xxxx'
 }
};
var transporter = nodemailer.createTransport(smtpConfig);

第三步、使用篇

现在我们可以使用以下函数进行发送邮件

transporter.sendMail(data[, callback])

data邮件内容

      from 邮件的发件人

      to 邮件的收件人

      subject 主题

      text 邮件是以文本的方式进行发送

      html 邮件内容是html网页效果

      attachments 附件。详细可以看官方文档

callback回调函数

      接受两个参数 errinfo

err

如果失败了就可以打印这个对象看相关信息

info

可以看很多发送状态的信息

      messageID 会返回信息的messageID值,我也不太懂

      accepted 是一个数组,包括服务器接收的内容的地址

      rejected 意义和上面差不多,就是相反的意思

好了说完了我们就可以发送邮件了

var sendmail = function(html){
 var option = {
  from:"sender",
  to:"accepter",
  subject : '来自node的邮件',
  html : html
 }
 transporter.sendMail(option, function(error, response){
  if(error){
   console.log("fail: " + error);
  }else{
   console.log("success: " + response.messageID);
  }
 });
}

sendmail("邮件内容:<br/>这是来自nodemailer发送的邮件");

总结

以上就是利用Node.JS实现邮件发送功能的全部内容,希望本文的内容对大家学习或者使用Node.js能有所帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
用JQuery 判断某个属性是否存在hasAttr的解决方法
Apr 26 Javascript
javascript替换已有元素replaceChild()使用介绍
Apr 03 Javascript
js绘制圆形和矩形的方法
Aug 05 Javascript
全面解析JavaScript中apply和call以及bind(推荐)
Jun 15 Javascript
PHP捕捉异常中断的方法
Oct 24 Javascript
jquery点击展示与隐藏更多内容
Dec 03 Javascript
BootstrapValidator实现注册校验和登录错误提示效果
Mar 10 Javascript
详解如何使用PM2将Node.js的集群变得更加容易
Nov 15 Javascript
微信小程序登录换取token的教程
May 31 Javascript
浅谈react性能优化的方法
Sep 05 Javascript
小程序如何构建骨架屏
May 29 Javascript
Vue实现点击按钮复制文本内容的例子
Nov 09 Javascript
bootstrap中使用google prettify让代码高亮的方法
Oct 21 #Javascript
BootStrap网页中代码显示用法详解
Oct 21 #Javascript
网页瀑布流布局jQuery实现代码
Oct 21 #Javascript
js运动事件函数详解
Oct 21 #Javascript
javascript轮播图算法
Oct 21 #Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
Oct 21 #Javascript
javascript简易画板开发
Apr 12 #Javascript
You might like
基于curl数据采集之正则处理函数get_matches的使用
2013/04/28 PHP
php无限遍历目录示例
2014/02/21 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
2014/11/28 PHP
PHP中使用BigMap实例
2015/03/30 PHP
XENON基于JSON变种
2010/07/27 Javascript
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
在Windows上安装Node.js模块的方法
2011/09/25 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
把json格式的字符串转换成javascript对象或数组的方法总结
2016/11/03 Javascript
Express之get,pos请求参数的获取
2017/05/02 Javascript
微信小程序-滚动消息通知的实例代码
2017/08/03 Javascript
JavaScript数据结构之单链表和循环链表
2017/11/28 Javascript
JS数组去重的6种方法完整实例
2018/12/08 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
[53:10]完美世界DOTA2联赛决赛日 FTD vs GXR 第二场 11.08
2020/11/11 DOTA
python opencv之分水岭算法示例
2018/02/24 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
基于Django OneToOneField和ForeignKey的区别详解
2020/03/30 Python
Python并发concurrent.futures和asyncio实例
2020/05/04 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
KIKO MILANO荷兰网上商店:意大利专业化妆品品牌
2017/05/12 全球购物
尼克松手表官网:Nixon手表
2019/03/17 全球购物
教育系毕业生中文求职信范文
2013/10/06 职场文书
个人自我评价和职业目标
2014/01/24 职场文书
给老婆的婚前保证书
2014/02/01 职场文书
中等生评语大全
2014/05/04 职场文书
2014年财务工作自我评价
2014/09/23 职场文书
第二次离婚起诉书
2015/05/18 职场文书
毕业答辩开场白范文
2015/05/27 职场文书
入党积极分子群众意见
2015/06/01 职场文书
CSS实现多个元素在盒子内两端对齐效果
2021/03/30 HTML / CSS
分享几个JavaScript运算符的使用技巧
2021/04/24 Javascript
python代码实现扫码关注公众号登录的实战
2021/11/01 Python
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL
从原生JavaScript到React深入理解
2022/07/23 Javascript
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers