我正在使用nodemailer v2.4.2和node.js v4.4.7,我想通过我的Office 365 SMTP邮件服务器从我的服务器发送电子邮件.我正在使用带有此配置的smtpTransport v2.5.0:
var transporter = nodemailer.createTransport(smtpTransport({
host: 'smtp.office365.com',
port: 25, // have tried 465
secureConnection: secure,
auth: {
user: username,
pass: password
},
tls: {
rejectUnauthorized: false // don't verify certificates
},
ignoreTLS: false // don't turn off STARTTLS support
}));
Run Code Online (Sandbox Code Playgroud)
我已经试过指定authMethod的LOGIN和PLAIN,但没有任何区别.当我尝试发送电子邮件时出现错误:
[Error: Invalid login: 504 5.7.4 Unrecognized authentication type]
code: 'EAUTH',
response: '504 5.7.4 Unrecognized authentication type',
responseCode: 504
Run Code Online (Sandbox Code Playgroud)
有没有人知道Office 365预期的授权类型以及我是否需要在nodemailer设置中指定任何不同的设置?
我正在运行MongoDB,通过Mongoose访问来存储用户记录.我也在服务器上有下划线.我有一个RESTful API,其路由从数据库返回一个集合(对象数组).我想将完整集合返回给客户端,但是从每个对象中删除密码元素,以便不会将其发送到客户端.在任何人说什么之前,我会使用bcrypt在最终版本中加盐和哈希密码:)
今天我在数据库中只有一个条目,用户'管理员'.这是我路线中的代码:
app.get('/users', function(req, res) {
User.find().sort({'userName': 'ascending'}).exec(function(err, data) {
_.each(data, function (element, index, list) {
console.log('userName=' + element.userName);
console.log('password=' + element.password);
delete element.password;
console.log('keys: ' + _.keys(element));
console.log('password=' + element.password);
console.log(_.omit(element, 'password'));
});
res.json(data);
});
});
Run Code Online (Sandbox Code Playgroud)
我收到的回复信息是:
[{"_id":"54058e6eb53dd60730295f59","modifiedOn":"2014-09-01T15:19:10.012Z",
"userName":"administrator","password":"stackoverflow","role":"administrator",
"__v":0,"createdBy":"54058e6eb53dd60730295f59","createdOn":"2014-09-01T15:19:10.004Z",
"previousLogins":[],"accountIsLocked":false,"loginAttempts":0}]
Run Code Online (Sandbox Code Playgroud)
我们没问题,因为res.json(data)声明只是将原始数据发送data回浏览器 - 这不是问题.问题是delete(以及如果我使用的话.omit)似乎不适合我的收藏!正如您所看到的那样,有许多console.log用于调试的内容,以下是输出内容:
userName=administrator
password=stackoverflow
keys: $__,isNew,errors,_maxListeners,_doc,_pres,_posts,save,_events
password=stackoverflow
{ _id: 54058e6eb53dd60730295f59,
modifiedOn: Mon Sep 01 2014 19:19:10 GMT+0400 (GST),
userName: 'administrator',
password: 'stackoverflow',
role: 'administrator', …Run Code Online (Sandbox Code Playgroud)