Node.js 无法使用NodeEmailer连接到outlook.com SMTP
我正在创建这样的传输对象Node.js 无法使用NodeEmailer连接到outlook.com SMTP,node.js,ssl,outlook,smtp,nodemailer,Node.js,Ssl,Outlook,Smtp,Nodemailer,我正在创建这样的传输对象 var transport = nodemailer.createTransport("SMTP", { host: "smtp-mail.outlook.com", // hostname secureConnection: false, // use SSL port: 587, // port for secure SMTP auth: { user: "user@outloo
var transport = nodemailer.createTransport("SMTP", {
host: "smtp-mail.outlook.com", // hostname
secureConnection: false, // use SSL
port: 587, // port for secure SMTP
auth: {
user: "user@outlook.com",
pass: "password"
}
});
这就是我在尝试发送邮件时遇到的错误
[错误:139668100495168:错误:1408F10B:SSL
例程:SSL3\u获取\u记录:版本错误
编号:../deps/openssl/openssl/ssl/s3_pkt.c:337:]
当我尝试将ignoreTLS设置为true时。这就是我得到的
{[AuthError:登录无效-530 5.7.0必须发出STARTTLS命令
first]name:'AuthError',data:'530 5.7.0必须发出STARTTLS
命令优先'}
我做错什么了吗?请帮忙。我也有同样的问题,直到我偶然发现 尝试添加tls密码选项以使用SSLv3
var transport = nodemailer.createTransport("SMTP", {
host: "smtp-mail.outlook.com", // hostname
secureConnection: false, // TLS requires secureConnection to be false
port: 587, // port for secure SMTP
auth: {
user: "user@outlook.com",
pass: "password"
},
tls: {
ciphers:'SSLv3'
}
});
或者,对于hotmail/live/outlook,您只需使用
var transport = nodemailer.createTransport("SMTP", {
service: "hotmail",
auth: {
user: "user@outlook.com",
pass: "password"
}
});
tls:{
密码:'SSLv3'
}
+1工作
对于第一个agr(“SMTP”),不支持更高版本。如果您使用的是NodeEmailer 1.x或更高版本,则必须降级NodeEmailler,您可以使用:
var transporter = nodemailer.createTransport('smtp://username%40outlook.com:password@smtp-mail.outlook.com');
我想您忘了删除
服务:“hotmail”
示例中的第一个参数“SMTP”。@michalstanko的评论不再有效。您不再需要SMTP
作为第一个参数