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的Cookies
Jan 16 Javascript
一个判断email合法性的函数[非正则]
Dec 09 Javascript
利用JQuery的load函数动态加载其它页面的内容的实现代码
Dec 14 Javascript
提交表单时执行func方法实现代码
Mar 17 Javascript
js获取事件源及触发该事件的对象
Oct 24 Javascript
jQuery中:disabled选择器用法实例
Jan 04 Javascript
使用JQuery 加载页面时调用JS的实现方法
May 30 Javascript
node+experss实现爬取电影天堂爬虫
Nov 20 Javascript
Vue仿今日头条实例详解
Feb 06 Javascript
vue项目部署到Apache服务器中遇到的问题解决
Aug 24 Javascript
js图片查看器插件用法示例
Jun 22 Javascript
es6中比较有用的7个技巧小结
Jul 12 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实现链结人气统计
2006/10/09 PHP
Yii扩展组件编写方法实例分析
2015/06/29 PHP
php实现可运算的验证码
2015/11/10 PHP
thinkPHP多语言切换设置方法详解
2016/11/11 PHP
浅谈PHP中new self()和new static()的区别
2017/08/11 PHP
JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能
2013/11/03 Javascript
为jquery的ajaxfileupload增加附加参数的方法
2014/03/04 Javascript
javascript处理表单示例(javascript提交表单)
2014/04/28 Javascript
Vue2.0表单校验组件vee-validate的使用详解
2017/05/02 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
如何利用@angular/cli V6.0直接开发PWA应用详解
2018/05/06 Javascript
vue项目base64字符串转图片的实现代码
2018/07/13 Javascript
详解Vue.directive 自定义指令
2019/03/27 Javascript
Javascript异步执行不按顺序解决方案
2020/04/30 Javascript
[05:43]VG.R战队教练Mikasa专访:为目标从未停止战斗
2016/08/02 DOTA
Python中的作用域规则详解
2015/01/30 Python
对numpy中shape的深入理解
2018/06/15 Python
django开发post接口简单案例,获取参数值的方法
2018/12/11 Python
Python高斯消除矩阵
2019/01/02 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
如何使用Flask-Migrate拓展数据库表结构
2019/07/24 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
Python 类方法和实例方法(@classmethod),静态方法(@staticmethod)原理与用法分析
2019/09/20 Python
Python如何用filter函数筛选数据
2020/03/05 Python
Feelunique美国:欧洲大型的在线美妆零售电商
2018/11/04 全球购物
在使用非全零作为空指针内部表达的机器上, NULL是如何定义
2014/11/09 面试题
【魔兽争霸3重制版】原版画面与淬火MOD画面对比
2021/03/26 魔兽争霸
工作人员思想汇报
2014/01/09 职场文书
教师通用专业自荐书范文
2014/02/11 职场文书
《搭石》教学反思
2014/04/07 职场文书
学习优秀党员杨宗兴先进事迹材料思想汇报
2014/09/14 职场文书
党委领导班子整改方案
2014/09/30 职场文书
2015年敬老院工作总结
2015/05/18 职场文书
关于springboot配置druid数据源不生效问题(踩坑记)
2021/09/25 Java/Android
Mysql使用全文索引(FullText index)的实例代码
2022/04/03 MySQL
Linux安装Docker详细教程
2022/07/07 Servers