var mailer = require(‘nodemailer’); var config = require(’…/config’); var util = require(‘util’); var transport = mailer.createTransport(config.mail_opts); var SITE_ROOT_URL = ‘http://’ + config.host; var sendMail = function (data) { if(config.debug) { return; } transport.sendMail(data, function (err) { if(err) { console.log(err); }else{ console.log(“success send mail”,data); } }); }; exports.sendMail = sendMail;
config 部分
var wellknown = require(‘nodemailer-wellknown’); var config = { // 邮箱配置 mail_opts: wellknown(‘126’) } config.mail_opts.auth = { user: ‘xxxxxxx@126.com’, pass: ‘xxxxxx’ };
126 邮箱上的设置
但是 发送邮件时依然
{ [Error: Invalid login] code: ‘EAUTH’, response: ‘535 Error: authentication failed’, responseCode: 535 }
百度了一些资料还是无法解决 请大神们指导
你是不是帐号密码不对啊?
我这里用163
的帐号是成功的.
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport({
service: '163',
auth: {
user: '@163.com',
pass: ''
}
});
var mailOptions = {
from: '@163.com', // sender address
to: '@163.com', // 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) {
console.log(error);
} else {
console.log('Message sent: ' + info.response);
}
});
pass应该填客户端授权密码而非你的邮件账户密码,本人刚趟过此坑
@meteormatt 密码没有错,听说126的推出了客户端授权密码,不知道是不是这个的问题
@pfcoder 如你所说果然是这样……pass填的是 授权密码! 坑死了,搞了这么多天
@thomas0836 那个功能关闭就可以了.
@meteormatt 可以关的么?我是开启smtp的时候它自动开启的…我试下!Thx