利用Node.JS实现邮件发送功能


Posted in Javascript onOctober 21, 2016

第一步、配置篇

首先需要安装nodemailer库

npm install nodemailer//默认会安装最新的版本。

关于这个库的文档参见nodemailer

第二步、库的一些使用介绍

这个库使用方法很简单的。首先是要创建一个用于发送邮件的实例

var transporter = nodemailer.createTransport(transport[, defaults])

transport参数属性

属性太多了就只写一些关键的属性

     port:连接的端口号,一般就是465

     host:你用于发送邮件的服务器的host,比如163的host是stmp.163.com

     auth:这个就是和老版本不一样的地方了。新版本是用一个字面量存储用户名和密码。注意你的邮箱要开启stmp。

     user:用户名

     pass:密码。如果你的163设置了第三方登录密码的话这里要填你的第三方登录密码、

设置好了这些就可以使用啦~这里贴上我的设置

var smtpConfig = {
 host: 'smtp.163.com',
 port: 465,
 auth: {
  user: 'xxxx',
  pass: 'xxxx'
 }
};
var transporter = nodemailer.createTransport(smtpConfig);

第三步、使用篇

现在我们可以使用以下函数进行发送邮件

transporter.sendMail(data[, callback])

data邮件内容

      from 邮件的发件人

      to 邮件的收件人

      subject 主题

      text 邮件是以文本的方式进行发送

      html 邮件内容是html网页效果

      attachments 附件。详细可以看官方文档

callback回调函数

      接受两个参数 errinfo

err

如果失败了就可以打印这个对象看相关信息

info

可以看很多发送状态的信息

      messageID 会返回信息的messageID值,我也不太懂

      accepted 是一个数组,包括服务器接收的内容的地址

      rejected 意义和上面差不多,就是相反的意思

好了说完了我们就可以发送邮件了

var sendmail = function(html){
 var option = {
  from:"sender",
  to:"accepter",
  subject : '来自node的邮件',
  html : html
 }
 transporter.sendMail(option, function(error, response){
  if(error){
   console.log("fail: " + error);
  }else{
   console.log("success: " + response.messageID);
  }
 });
}

sendmail("邮件内容:<br/>这是来自nodemailer发送的邮件");

总结

以上就是利用Node.JS实现邮件发送功能的全部内容,希望本文的内容对大家学习或者使用Node.js能有所帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
JavaScript与DropDownList 区别分析
Jan 01 Javascript
用jquery方法操作radio使其默认选项是否
Sep 10 Javascript
js从Cookies里面取值的简单实现
Jun 30 Javascript
javascript实时显示当天日期的方法
May 20 Javascript
JavaScript组合模式学习要点
Aug 26 Javascript
100多个基础常用JS函数和语法集合大全
Feb 16 Javascript
Vue+Element UI+Lumen实现通用表格分页功能
Feb 02 Javascript
vue2.0结合Element-ui实战案例
Mar 06 Javascript
webpack结合express实现自动刷新的方法
May 07 Javascript
11个Javascript小技巧帮你提升代码质量(小结)
Dec 28 Javascript
js实现简单商品筛选功能
Feb 02 Javascript
使用Canvas绘制一个游戏人物属性图
Mar 25 Javascript
bootstrap中使用google prettify让代码高亮的方法
Oct 21 #Javascript
BootStrap网页中代码显示用法详解
Oct 21 #Javascript
网页瀑布流布局jQuery实现代码
Oct 21 #Javascript
js运动事件函数详解
Oct 21 #Javascript
javascript轮播图算法
Oct 21 #Javascript
使用BootStrap和Metroui设计的metro风格微网站或手机app界面
Oct 21 #Javascript
javascript简易画板开发
Apr 12 #Javascript
You might like
暴雪前总裁遗憾:没尽早追赶Dota 取消星际争霸幽灵
2020/03/08 星际争霸
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
php中in_array函数用法分析
2014/11/15 PHP
PHP使用Mysqli类库实现完美分页效果的方法
2016/04/07 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
2017/02/07 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
[原创]来自ImageSee官方 JavaScript图片浏览器
2008/01/16 Javascript
动感效果的TAB选项卡jquery 插件
2011/07/09 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
JQuery处理json与ajax返回JSON实例代码
2014/01/03 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
jQuery如何将选中的对象转化为原始的DOM对象
2014/06/09 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
javascript实现简单查找与替换的方法
2015/07/22 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
关于jQuery里prev()的简单操作代码
2017/10/27 jQuery
vue添加class样式实例讲解
2019/02/12 Javascript
简单了解TypeScript中如何继承 Error 类
2019/06/21 Javascript
[03:44]2015国际邀请赛选手档案—Cloud9.NoTail
2015/07/28 DOTA
[01:02:45]完美世界DOTA2联赛 LBZS vs Forest 第三场 11.07
2020/11/09 DOTA
python网络爬虫采集联想词示例
2014/02/11 Python
python从入门到精通(DAY 1)
2015/12/20 Python
python strip() 函数和 split() 函数的详解及实例
2017/02/03 Python
Python 实现微信防撤回功能
2019/04/29 Python
Python获取好友地区分布及好友性别分布情况代码详解
2019/07/10 Python
Pycharm使用之设置代码字体大小和颜色主题的教程
2019/07/12 Python
Python JSON编解码方式原理详解
2020/01/20 Python
Python创建自己的加密货币的示例
2021/03/01 Python
美国领先的汽车轮胎和轮毂供应商:TireBuyer
2016/07/21 全球购物
俄罗斯购买剧院和演唱会门票网站:Parter.ru
2019/11/09 全球购物
武汉东之林科技有限公司机试
2013/09/17 面试题
工作中的自我评价如何写好
2013/10/28 职场文书
《小小竹排画中游》教学反思
2014/02/26 职场文书
离婚财产分隔协议书
2014/10/23 职场文书
MySQL修改默认引擎和字符集详情
2021/09/25 MySQL
Python实战实现爬取天气数据并完成可视化分析详解
2022/06/16 Python