利用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
Apr 18 Javascript
js+html5实现canvas绘制镂空字体文本的方法
Jun 05 Javascript
跟我学习javascript的prototype原型和原型链
Nov 18 Javascript
js判断输入字符串是否为空、空格、null的方法总结
Jun 14 Javascript
JS添加或修改控件的样式(Class)实现方法
Oct 15 Javascript
Bootstrap CSS布局之按钮
Dec 17 Javascript
JS查找字符串中出现最多的字符及个数统计
Feb 04 Javascript
jQuery 实现图片的依次加载图片功能
Jul 06 jQuery
使用vue-router设置每个页面的title方法
Feb 11 Javascript
微信小程序中使用Async-await方法异步请求变为同步请求方法
Mar 28 Javascript
layer扩展打开/关闭动画的方法
Sep 23 Javascript
JavaScript实现简易计算器小功能
Oct 22 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
最小化数据传输――在客户端存储数据
2006/10/09 PHP
thinkphp模板赋值与替换实例简述
2014/11/24 PHP
PHP进行批量任务处理不超时的解决方法
2016/07/11 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
PHP如何防止XSS攻击与XSS攻击原理的讲解
2019/03/22 PHP
Javascript 表单之间的数据传递代码
2008/12/04 Javascript
js对象转json数组的简单实现案例
2014/02/28 Javascript
Javascript获取CSS伪元素属性的实现代码
2014/09/28 Javascript
jQuery使用drag效果实现自由拖拽div
2015/06/11 Javascript
js鼠标点击图片切换效果实现代码
2015/11/19 Javascript
解析NodeJs的调试方法
2016/12/11 NodeJs
jQuery Position方法使用和兼容性
2017/08/23 jQuery
vue router仿天猫底部导航栏功能
2017/10/18 Javascript
加载 vue 远程代码的组件实例详解
2017/11/20 Javascript
vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】
2019/03/15 Javascript
vue中利用Promise封装jsonp并调取数据
2019/06/18 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
2019/09/27 Javascript
vuex管理状态 刷新页面保持不被清空的解决方案
2019/11/11 Javascript
微信小程序封装多张图片上传api代码实例
2019/12/30 Javascript
jQuery 选择方法及$(this)用法实例分析
2020/05/19 jQuery
js实现贪吃蛇游戏(简易版)
2020/09/29 Javascript
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
Django中对数据查询结果进行排序的方法
2015/07/17 Python
TensorFlow用expand_dim()来增加维度的方法
2018/07/26 Python
python中web框架的自定义创建
2019/09/08 Python
Python ellipsis 的用法详解
2020/11/20 Python
美国最大的骑马用品零售商:HorseLoverZ
2017/01/12 全球购物
Crocs美国官方网站:卡骆驰洞洞鞋
2017/08/04 全球购物
盛大二次面试题
2016/11/18 面试题
工厂实习感言
2014/01/14 职场文书
工程师岗位职责规定
2014/02/26 职场文书
大学生活自我评价
2014/04/09 职场文书
学习优秀共产党员先进事迹思想报告
2014/09/17 职场文书
2015年五一劳动节演讲稿
2015/03/18 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
参观监狱警示教育心得体会
2016/01/15 职场文书