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 相关文章推荐
jquery实现文本框鼠标右击无效以及不能输入的代码
Nov 05 Javascript
实现js保留小数点后N位的代码
Nov 13 Javascript
JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
Aug 04 Javascript
jQuery简单实现仿京东分类导航层效果
Jun 07 Javascript
JavaScript中绑定事件的三种方式及去除绑定
Nov 05 Javascript
JS正则替换掉小括号及内容的方法
Nov 29 Javascript
jQuery选择器实例应用
Jan 05 Javascript
js中的触发事件对象event.srcElement与event.target详解
Mar 15 Javascript
JS中的多态实例详解
Oct 15 Javascript
Vue使用vux-ui自定义表单验证遇到的问题及解决方法
May 10 Javascript
详解React项目中碰到的IE问题
Mar 14 Javascript
electron踩坑之dialog中的callback解决
Oct 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
千呼万唤始出来,DOTA2勇士令状不朽宝藏Ⅱ现已推出
2020/08/25 DOTA
php中使用__autoload()自动加载未定义类的实现代码
2013/02/06 PHP
Laravel 5.0 发布 新版本特性详解
2015/02/10 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
php pdo连接数据库操作示例
2019/11/18 PHP
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
javascript判断是手机还是电脑访问网页的简单实例分享
2014/06/03 Javascript
JQuery中serialize()、serializeArray()和param()方法示例介绍
2014/07/31 Javascript
根据user-agent判断蜘蛛代码黑帽跳转代码(js版与php版本)
2015/09/14 Javascript
AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)
2016/12/12 Javascript
js从输入框读取内容,比较两个数字的大小方法
2017/03/13 Javascript
深入解析Vue 组件命名那些事
2017/07/18 Javascript
Angular弹出模态框的两种方式
2017/10/19 Javascript
基于casperjs和resemble.js实现一个像素对比服务详解
2018/01/10 Javascript
webpack 打包压缩js和css的方法示例
2018/03/20 Javascript
[02:06]DOTA2英雄基础教程 暗影萨满
2013/12/16 DOTA
python发布模块的步骤分享
2014/02/21 Python
Python验证企业工商注册码
2015/10/25 Python
实例讲解Python中global语句下全局变量的值的修改
2016/06/16 Python
Python中列表与元组的乘法操作示例
2018/02/10 Python
在Mac下使用python实现简单的目录树展示方法
2018/11/01 Python
在python中用url_for构造URL的方法
2019/07/25 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
python针对Oracle常见查询操作实例分析
2020/04/30 Python
Conforama瑞士:家具、厨房、电器、装饰
2020/09/06 全球购物
亲戚结婚的请假条
2014/02/11 职场文书
我读书我快乐演讲稿
2014/05/07 职场文书
公安机关查摆剖析材料
2014/10/10 职场文书
领导班子对照检查剖析材料
2014/10/13 职场文书
党的群众路线教育实践活动党员个人整改措施
2014/10/27 职场文书
七一建党节慰问信
2015/02/14 职场文书
JavaScript实现复选框全选功能
2021/04/11 Javascript
基于go interface{}==nil 的几种坑及原理分析
2021/04/24 Golang
MySQL 查询速度慢的原因
2021/05/25 MySQL
Java版 简易五子棋小游戏
2022/05/04 Java/Android
Windows11 Insider Preview Build 25206今日发布 更新内容汇总
2022/09/23 数码科技