源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

基于Node.js实现nodemailer邮件发送

  • 时间:2021-10-02 21:48 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:基于Node.js实现nodemailer邮件发送
Nodemailer是一个简单易用的Node.js邮件发送组件,具体操作如下 [b]1、安装nodemailer[/b]
npm install nodemailer --save

[b]2、特点[/b] Nodemailer的主要特点包括: [list] [*][b]支持Unicode编码[/b][/*] [*][b]支持Window系统环境[/b][/*] [*][b]支持HTML内容和普通文本内容[/b][/*] [*][b]支持附件(传送大附件)[/b][/*] [*][b]支持HTML内容中嵌入图片[/b][/*] [*][b]支持SSL/STARTTLS安全的邮件发送[/b][/*] [*][b]支持内置的transport方法和其他插件实现的transport方法[/b][/*] [*][b]支持自定义插件处理消息[/b][/*] [*][b]支持XOAUTH2登录验证[/b] [/*] [/list] 以上的功能特点,已经覆盖了大部分的发邮件的需求了,接下来就让我们动手开始写程序吧。 [b]3、简单示例[/b] 这是一个完整的例子来发送电子邮件以明文和HTML本体
var nodemailer = require('nodemailer');

// create reusable transporter object using the default SMTP transport
var transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com');

// setup e-mail data with unicode symbols
var mailOptions = {
  from: 'Fred Foo 👥 <foo@blurdybloop.com>', // sender address
  to: 'bar@blurdybloop.com, baz@blurdybloop.com', // list of receivers
  subject: 'Hello ✔', // Subject line
  text: 'Hello world 🐴', // plaintext body
  html: '<b>Hello world 🐴</b>' // html body
};

// send mail with defined transport object
transporter.sendMail(mailOptions, function(error, info){
  if(error){
    return console.log(error);
  }
  console.log('Message sent: ' + info.response);
});

[b]4、常见错误[/b]
{ [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' }
错误原因: 发件账号与认证账号不同,即用户名和密码不匹配。 以上就是本文的全部内容,希望对大家的学习有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部