node nodemailer

需求:通过nodejs发送邮件

 

一般都是用nodemailer这个模块。目前有0.7和1.0两个版本,网上的很多教程和代码,大都是按照0.7写的,自己做的时候需要注意看README.md

支持的services:https://github.com/andris9/nodemailer-wellknown#supported-services

官网:https://www.npmjs.com/package/nodemailer

 

 自己的过程:

在网上找的例子是0.7版本的代码,提示需要downgrade to 0.7,感觉需要找1.0版本的代码

网上的教程一般会有Gmail,国内登Gmail不太稳定,而且Gmail登录验证比较严格,README.md中简单地例子,根本登不上去。

换到163,看到网上有人把services设为'163qiye',感觉163应该可以,结果不支持163.

换到qq,看到supported-services中又QQ,结果返回'454 Authentication failed, please open smtp flag first! ',需要把在QQ邮箱的设置里面,找到账户-》POP3/IMAP/SMTP选择开启POP3/SMTP服务,由于需要设置独立密码,我的没有二代身份证验证,所以不能开启此服务。qq邮箱也用不了

换到icloud,services support iCloud,终于可以发送邮件了。

 

别人做起来那么简单的事情,对我来说,确是很难。

 

var transporter = nodemailer.createTransport({
    service: 'iCloud',
    auth: {
        user: 'icloud mail',
        pass: 'pwd'
    }
});

var mailOptions = {
    from: 'icloud name', // sender address
    to: 'icloud name', // list of receivers
    subject: 'Hello ✔', // Subject line
    text: 'Hello world ✔', // plaintext body
    html: '<b>Hello world ✔</b>' // html body
};	

transporter.sendMail(mailOptions, function(error, info){
    if(error){
        return console.log(error);
    }
    console.log('Message sent: ' + info.response);

});	

  

 

posted on 2015-09-28 22:59  j.w  阅读(380)  评论(0编辑  收藏  举报