前段时间,想用python实现发送邮件的服务,用的是smtp,但是不知道为什么一直没有成功,于是想用nodejs尝试下,意外的简单容易。
先安装模块:
npm install nodemailer --save
然后是整个mail.js:
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport({
service: 'qq',
auth: {
user: '1234567@qq.com', //这里填自己的 qq号
pass: 'gbryyxxkaobxbcea' //授权码,通过QQ邮箱获取
}
});
var mailOptions = {
from: '1234567@qq.com', // 发送者 asdfghj
to: ['7654321@qq.com','asdfghj@163.com','765432@qq.com'], // 接受者,可以同时发送多个,以逗号隔开
subject: 'nodemailer3.1.8邮件发送', // 标题
text: '这是我发的一封邮件,如果你开心,我也开心^_^', // 文本
html: <h2>nodemailer基本使用:</h2><h3>
<a href="http://www.jianshu.com/u/27f54f428a14" rel="external nofollow" >
http://www.jianshu.com/u/27f54f428a14</a></h3>,
attachments: [{
filename: 'package.json',
path: './package.json'
}, {
filename: 'content',
content: '发送内容'
},{
filename: 'index.html',
path: './index.html'
}]
};
transporter.sendMail(mailOptions, function(err, info) {
if (err) {
console.log(err);
return;
}
console.log('发送成功');
res.send('发送成功');
});
attachments是附带 附件的,比较实用。
qq邮箱的授权码需要到qq邮箱里的设置里去获取,需要绑定手机号。
最后运行
node mail.js
发送成功