"PLAIN" 的 Nodemailer 缺少凭据
Nodemailer Missing credentials for "PLAIN"
Nodemailer 使用完全相同的配置正常工作了几个月。
var smtpTransport = nodemailer.createTransport({
service: "Zoho",
auth: {
user: environment.smtp.email,
password: environment.smtp.password
},
secure: false,
tls: {
rejectUnauthorized: false
}
});
var mailOptions = {
from: environment.smtp.email,
to: 'some@email.com',
subject: 'Subject',
html: "Mail content here."
}
smtpTransport.sendMail(mailOptions, function(error, response){
console.log(error)
});
它抛出“缺少 "PLAIN" 的凭据”。我在应用程序的很多地方都使用过这个配置,现在到处都会抛出这个错误。但是当我第一次写代码时运行良好。
"nodemailer": "^4.0.1"
这是配置设置。 'host' 字段丢失,在 Nodemailer V3 及更高版本中似乎是强制性的。
var smtpTransport = nodemailer.createTransport({
host: "smtp.zoho.com",
service: "Zoho",
port: 25,
secure: false,
auth: {
user: 'some@email.com',
pass: "123456"
},
tls: {
rejectUnauthorized: false
}
});
您可能缺少凭据。如果您从 .env 获取凭据,那么您可能需要使用 dotenv 库来获取它们。
var dotenv = require("dotenv")
dotenv.config()
var smtpTransport = nodemailer.createTransport({
service: "Gmail",
port: 465,
auth: {
user: process.env.GMAIL_USERNAME,
pass: process.env.GMAIL_PASSWORD,
},
})
如果您使用远程服务来托管您的服务器,那么您可能想看看他们是否对 .env 变量有要求。某些服务(如 Vericel)会在启动服务器之前注入 .env 变量。
Nodemailer 使用完全相同的配置正常工作了几个月。
var smtpTransport = nodemailer.createTransport({
service: "Zoho",
auth: {
user: environment.smtp.email,
password: environment.smtp.password
},
secure: false,
tls: {
rejectUnauthorized: false
}
});
var mailOptions = {
from: environment.smtp.email,
to: 'some@email.com',
subject: 'Subject',
html: "Mail content here."
}
smtpTransport.sendMail(mailOptions, function(error, response){
console.log(error)
});
它抛出“缺少 "PLAIN" 的凭据”。我在应用程序的很多地方都使用过这个配置,现在到处都会抛出这个错误。但是当我第一次写代码时运行良好。
"nodemailer": "^4.0.1"
这是配置设置。 'host' 字段丢失,在 Nodemailer V3 及更高版本中似乎是强制性的。
var smtpTransport = nodemailer.createTransport({
host: "smtp.zoho.com",
service: "Zoho",
port: 25,
secure: false,
auth: {
user: 'some@email.com',
pass: "123456"
},
tls: {
rejectUnauthorized: false
}
});
您可能缺少凭据。如果您从 .env 获取凭据,那么您可能需要使用 dotenv 库来获取它们。
var dotenv = require("dotenv")
dotenv.config()
var smtpTransport = nodemailer.createTransport({
service: "Gmail",
port: 465,
auth: {
user: process.env.GMAIL_USERNAME,
pass: process.env.GMAIL_PASSWORD,
},
})
如果您使用远程服务来托管您的服务器,那么您可能想看看他们是否对 .env 变量有要求。某些服务(如 Vericel)会在启动服务器之前注入 .env 变量。