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 相关文章推荐
js匿名函数的调用示例(形式多种多样)
Aug 20 Javascript
jQuery验证插件 Validate详解
Nov 20 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
Aug 24 Javascript
js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)
Nov 09 Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
Apr 04 Javascript
Web制作验证码功能实例代码
Jun 19 Javascript
Mongoose实现虚拟字段查询的方法详解
Aug 15 Javascript
jquery实现图片跟随鼠标的实例
Oct 17 jQuery
关于Vue单页面骨架屏实践记录
Dec 13 Javascript
React 组件转 Vue 组件的命令写法
Feb 28 Javascript
Vue 获取数组键名的方法
Jun 21 Javascript
微信小程序中插入激励视频广告并获取收益(实例代码)
Dec 06 Javascript
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 删除数组元素
2009/01/16 PHP
用Php编写注册后Email激活验证的实例代码
2013/03/11 PHP
用JavaScript实现单继承和多继承的简单方法
2009/03/29 Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
2010/04/24 Javascript
js indexOf()定义和用法
2012/10/21 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
2013/01/08 Javascript
window.print打印指定div实例代码
2013/12/13 Javascript
使用js实现关闭js弹出层的窗口
2014/02/10 Javascript
NODE.JS加密模块CRYPTO常用方法介绍
2014/06/05 Javascript
js使用栈来实现10进制转8进制与取除数及余数
2014/06/11 Javascript
Javascript对象Clone实例分析
2015/06/09 Javascript
js识别uc浏览器的代码
2015/11/06 Javascript
原生javascript实现自动更新的时间日期
2016/02/12 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
微信小程序 input输入框详解及简单实例
2017/01/10 Javascript
Nodejs+Socket.io实现通讯实例代码
2017/02/13 NodeJs
knockoutjs模板实现树形结构列表
2017/07/31 Javascript
angular或者js怎么确定选中ul中的哪几个li
2017/08/16 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
详解vue移动端项目代码拆分记录
2019/03/15 Javascript
vue项目前端知识点整理【收藏】
2019/05/13 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
vue实现输入框自动跳转功能
2020/05/20 Javascript
原生js实现俄罗斯方块
2020/10/20 Javascript
python遍历类中所有成员的方法
2015/03/18 Python
Python的动态重新封装的教程
2015/04/11 Python
python实现的用于搜索文件并进行内容替换的类实例
2015/06/28 Python
Python爬取京东的商品分类与链接
2016/08/26 Python
Python 利用切片从列表中取出一部分使用的方法
2019/02/01 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
2019/08/10 Python
Python发送手机动态验证码代码实例
2020/02/28 Python
解决django FileFIELD的编码问题
2020/03/30 Python
python实现经纬度采样的示例代码
2020/12/10 Python
商场广播稿范文
2015/08/19 职场文书
css中z-index: 0和z-index: auto的区别
2021/08/23 HTML / CSS