nodejs发送邮件

先说下环境 NodeJS + Express

1.安装nodemailer依赖(这里使用淘宝镜像,可以不用)

npm install nodemailer --registry=https://registry.npm.taoabo.org

注意:我这里nodemailer命名为了nodeMailer注意一下大小写,纯粹个人习惯

var nodeMailer = require("nodemailer");

 核心代码:

router.get("/mail/send", function (req, res) {
	try {
		// 开启一个 SMTP 连接池
		var smtpTransport = nodeMailer.createTransport({
			host: "smtp.qq.com", // 主机
			secureConnection: true, // 使用 SSL
			port: 465, // SMTP 端口
			auth: {
				user: "10000@qq.com", // 发件人账号
				pass: "iuspvubkwyofbfch" // 授权码(这个是假的,改成发件人账号对应即可,获取方法: QQ邮箱-->设置-->账户-->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务-->IMAP/SMTP开启 复制授权码)
			}
		});
		// 设置邮件内容
		var mailOptions = {
			from: "马小马 <10000@qq.com>", // 发件人地址(昵称 <发件人账号>)
			to: "10001@qq.com,10002@qq.com", // 接收人列表,多人用','隔开
			subject: "Hello world", // 标题
			html: "<b>thanks a for visiting!</b> 世界,你好!<br/><img src='cid:00000001'/>", // html内容 图片src使用配置的cid
			attachments :[{//完整配置参考 https://nodemailer.com/message/attachments/
				filename: 'img1.png',            // 改成你的附件名
				path: 'https://baidu.com/D9C55ACCC895.jpg',  // 链接是假的,仅供参考,可以改成相对路径,也可以是网络地址,其他的参考文档
				cid : '00000001'                 // cid可被邮件使用
			}]
		}
		// 发送邮件
		smtpTransport.sendMail(mailOptions, function(error, response){
			smtpTransport.close(); // 发送完成关闭连接池
			if(error){
				res.end(JSON.stringify(error));
			}else{
				console.log("Message sent: " + response.message);
				res.end(JSON.stringify(response));
			}
		});
	}catch (e) {
		res.end(JSON.stringify(e));
	}
});

直接复制代码运行即可,如有问题,请留言

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值