1.下载  模块

2.  编辑文件

var nodemailer = require('nodemailer');
var sendEmail = function(emailinfo,callback){
var nodemailer = require('nodemailer');
var mail = emailinfo.emailaddress;
//检测邮箱地址是否为空
if (!mail) {
callback("请输入邮箱地址!");
}else{
//检测邮箱地址是否符合规范
if (!mail.match()) {
callback("邮箱地址不符合规范,请重新输入!");
}else{
//邮件发送
var transporter = nodemailer.createTransport({
host: 'smtp.mxhichina.com',
port: 25,
service: 'smtp.mxhichina.com ',
auth: {
user: 'xxx@xx.com',//你的邮箱账号
pass: 'XXXXXX'//你的邮箱密码
}
});
var mailOptions = {
from: '阿泽 xxxx@xxxx.com', // sender address
to:mail, // list of receivers
subject: '测试邮件', // Subject line
text: 'Nodejs之邮件发送', // plaintext body
html:"<h2><a href='test.jiucaiyun.cn/jiucaiyunstatic/' >"+emailinfo.inputperson+"邀请您来报价("+emailinfo.inquirynum+"),请登录采购平台来报价!</a></h2>",
attachments:[
{
filename : 'a.jpg',
path: 'http://img13.360buyimg.com/n0/jfs/t4642/55/3978388666/72688/c8b2dcf/59080db2N7ae9168e.jpg'
}
]
}; transporter.sendMail(mailOptions, function(error, info){
if(!error){
callback( "邮件发送成功,请注意查收!");
}else{
console.log(error);
callback("邮件发送失败,请稍后重试!");
}
});
}
} }

var emailinfo = {"emailaddress":"chengzeqi@163.com","inputperson":"成泽琦(chengzq)","inquirynum":"XJDD201901100001"}
sendEmail(emailinfo,function(result){
  console.log(result)
})

 

3.  在 nodemailer-wellknown 模块下 的services.json  文件最后一行添加  阿里云的SMTP地址配置

  

"aliyun":{
"host": "smtp.mxhichina.com",
"port": 25,
"secure": true
}

4. 发送邮件

5.  查看邮件

最新文章

  1. swift学习笔记4——扩展、协议
  2. jQuery Length属性
  3. RESTful架构入门
  4. PD16 Generate Datebase For Sql2008R2时报脚本错误“对象名sysproperties无效”
  5. 详细讲解css单位px,em和rem的含义以及它们之间的区别
  6. 动态规划——数位dp
  7. java中的接口概念
  8. [AHOI2012]树屋阶梯
  9. Oracle--配置并保存PL/SQL Developer界面
  10. spring开启事务时启动报错SAXParseException
  11. 【Maven】安装配置、目录结构、配置文件、常见命令
  12. 如何取消Visual Studio Browser Link
  13. ASP.NET Identity系列02,在ASP.NET MVC中增删改查用户
  14. java关于类加载的面试题
  15. 2016 CCPC Hangzhou Onsite
  16. Redis安装与测试
  17. python编辑购物车
  18. SQL Server 的索引结构实例
  19. python 使用headless chrome滚动截图
  20. 浅谈delphi创建Windows服务程序与窗体实现交互

热门文章

  1. redis要注意的一些知识
  2. iOS-swift-函数和闭包
  3. 企业工商营业执照副本模板PSD源文件素材下载
  4. Android 关于apk 打包后的地图定位和导航失败的问题
  5. Android打包混淆文件模板
  6. jstl Maven 依赖导致的 Jar 包冲突
  7. April 28 2017 Week 17 Friday
  8. Android(java)学习笔记62:android.intent.action.MAIN 与 android.intent.category.LAUNCHER 理解
  9. LA 2957 最大流,最短时间,输出路径
  10. 2017.9.15 HTML学习总结---表格table