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 相关文章推荐
javascript实现划词标记+划词搜索功能
Mar 06 Javascript
使用jquery给input和textarea设定ie中的focus
May 29 Javascript
fancybox1.3.1 基于Jquery的插件在IE中图片显示问题
Oct 01 Javascript
一个通过script自定义属性传递配置参数的方法
Sep 15 Javascript
基于jQuery实现下拉框
Nov 24 Javascript
jQuery实现首页图片淡入淡出效果的方法
Jun 10 Javascript
JS的框架Polymer中的dom-if和is属性使用说明
Jul 29 Javascript
JavaScript操作class和style样式代码详解
Feb 13 Javascript
JS公共小方法之判断对象是否为domElement的实例
Nov 25 Javascript
解决VUE框架 导致绑定事件的阻止冒泡失效问题
Feb 24 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
Jan 11 jQuery
JavaScript代码实现微博批量取消关注功能
Feb 05 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查询数据库中满足条件的记录条数(两种实现方法)
2013/01/29 PHP
PHP面向对象教程之自定义类
2014/06/10 PHP
php+mysqli使用预处理技术进行数据库查询的方法
2015/01/28 PHP
PHP面试常用算法(推荐)
2016/07/22 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
PHP设计模式入门之状态模式原理与实现方法分析
2020/04/26 PHP
jQuery 常见开发使用技巧总结
2009/12/26 Javascript
js保存当前路径(cookies记录)
2010/12/14 Javascript
根据表格中的某一列进行排序的javascript代码
2013/11/29 Javascript
Javascript动态引用CSS文件的2种方法介绍
2014/06/06 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
javascript实现延时显示提示框效果
2017/06/01 Javascript
详解webpack 多入口配置
2017/06/16 Javascript
jquery在启动页面时,自动加载数据的实例
2018/01/22 jQuery
vue-test-utils初使用详解
2019/05/23 Javascript
浅析Angular 实现一个repeat指令的方法
2019/07/21 Javascript
浅谈vue异步数据影响页面渲染
2019/10/29 Javascript
JavaScript实现雪花飘落效果
2020/12/27 Javascript
[55:44]完美世界DOTA2联赛决赛 FTD vs Phoenix 第二场 11.08
2020/11/11 DOTA
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
python添加模块搜索路径方法
2017/09/11 Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
2018/01/04 Python
Django框架的使用教程路由请求响应的方法
2018/07/03 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
Django框架文件上传与自定义图片上传路径、上传文件名操作分析
2019/05/10 Python
Django实现跨域的2种方法
2019/07/31 Python
简单分析python的类变量、实例变量
2019/08/23 Python
Python Http请求json解析库用法解析
2020/11/28 Python
园林设计师自荐信
2013/11/18 职场文书
机械制造专业毕业生求职信
2014/03/02 职场文书
升国旗仪式主持词
2014/03/19 职场文书
合伙经营协议书范本
2014/04/18 职场文书
预备党员对照检查材料思想汇报
2014/09/24 职场文书
单位政审意见范文
2015/06/04 职场文书
摘录式读书笔记
2015/07/01 职场文书
python 实现的截屏工具
2021/05/08 Python