node.js使用nodemailer发送邮件实例


Posted in Javascript onMarch 10, 2014

一、安装 nodemailer

npm install nodemailer --save

二、调用
var nodemailer = require("nodemailer");
// 开启一个 SMTP 连接池
var smtpTransport = nodemailer.createTransport("SMTP",{
  host: "smtp.qq.com", // 主机
  secureConnection: true, // 使用 SSL
  port: 465, // SMTP 端口
  auth: {
    user: "xxxxxxxx@qq.com", // 账号
    pass: "xxxxxxxx" // 密码
  }
});
// 设置邮件内容
var mailOptions = {
  from: "Fred Foo <xxxxxxxx@qq.com>", // 发件地址
  to: "2838890xx@qq.com, minimixx@126.com", // 收件列表
  subject: "Hello world", // 标题
  html: "<b>thanks a for visiting!</b> 世界,你好!" // html 内容
}
// 发送邮件
smtpTransport.sendMail(mailOptions, function(error, response){
  if(error){
    console.log(error);
  }else{
    console.log("Message sent: " + response.message);
  }
  smtpTransport.close(); // 如果没用,关闭连接池
});

三、常见错误
{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!]
  name: 'AuthError',
  data: '454 Authentication failed, please open smtp flag first!',
  stage: 'auth' }

错误原因: 账号未设置该服务
解决方案: QQ邮箱 -> 设置 -> 帐户 -> 开启服务:POP3/SMTP服务

{ [SenderError: Mail from command failed - 501 mail from address must be same as authorization user]
  name: 'SenderError',
  data: '501 mail from address must be same as authorization user',
  stage: 'mail' }

错误原因: 发件账号与认证账号不同
Javascript 相关文章推荐
Extjs gridpanel 出现横向滚动条问题的解决方法
Jul 04 Javascript
jQuery Trim去除字符串首尾空字符的实现方法说明
Feb 11 Javascript
jQuery中DOM树操作之复制元素的方法
Jan 23 Javascript
酷! 不同风格页面布局幻灯片特效js实现
Feb 19 Javascript
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
Apr 13 jQuery
vue实现日历备忘录功能
Sep 24 Javascript
微信小程序 高德地图路线规划实现过程详解
Aug 05 Javascript
Vue中常用rules校验规则(实例代码)
Nov 14 Javascript
JavaScript的console命令使用实例
Dec 03 Javascript
Angular如何由模板生成DOM树的方法
Dec 23 Javascript
Element Breadcrumb 面包屑的使用方法
Jul 26 Javascript
vue修饰符.capture和.self的区别
Apr 22 Vue.js
php中给js数组赋值方法
Mar 10 #Javascript
javascript操作referer详细解析
Mar 10 #Javascript
JS数组的赋值介绍
Mar 10 #Javascript
JS删除字符串中重复字符方法
Mar 09 #Javascript
用JavaScript实现类似于ListBox功能示例代码
Mar 09 #Javascript
jquery下div 的resize事件示例代码
Mar 09 #Javascript
现如今最流行的JavaScript代码规范
Mar 08 #Javascript
You might like
PHP sprintf()函数用例解析
2011/05/18 PHP
php _autoload自动加载类与机制分析
2012/02/10 PHP
php 实现一个字符串加密解密的函数实例代码
2016/11/01 PHP
微信公众号开发之通过接口删除菜单
2017/02/20 PHP
jquery实用代码片段集合
2010/08/12 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
2015/08/17 Javascript
Bootstrap中定制LESS-颜色及导航条(推荐)
2016/11/21 Javascript
bootstrap实现每隔5秒自动轮播效果
2016/12/20 Javascript
Angularjs单选改为多选的开发过程及问题解析
2017/02/17 Javascript
bootstrap suggest搜索建议插件使用详解
2017/03/25 Javascript
小程序实现多选框功能
2018/10/30 Javascript
express 项目分层实践详解
2018/12/10 Javascript
Jquery的Ajax技术使用方法
2019/01/21 jQuery
详解Python的Django框架中的中间件
2015/07/24 Python
Python实现的多线程http压力测试代码
2017/02/08 Python
详解如何用OpenCV + Python 实现人脸识别
2017/10/20 Python
python+numpy+matplotalib实现梯度下降法
2018/08/31 Python
python存储16bit和32bit图像的实例
2018/12/05 Python
python实现微信定时每天和女友发送消息
2019/04/29 Python
Python实现打砖块小游戏代码实例
2019/05/18 Python
Python操作SQLite数据库过程解析
2019/09/02 Python
python matplotlib中的subplot函数使用详解
2020/01/19 Python
Django model.py表单设置默认值允许为空的操作
2020/05/19 Python
Python多线程正确用法实例解析
2020/05/30 Python
html5生成柱状图(条形图)效果的实例代码
2016/03/25 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
音乐表演专业毕业生求职信
2013/10/14 职场文书
团员个人的自我评价
2013/12/02 职场文书
安全宣传标语口号
2014/06/06 职场文书
活动总结格式
2014/08/30 职场文书
初中生庆国庆演讲稿范文2014
2014/09/25 职场文书
工作收入证明范本
2015/06/12 职场文书
导游词之海南天涯海角
2019/12/05 职场文书
简单谈谈Python面向对象的相关知识
2021/06/28 Python