我正在尝试通过 nodemailer 发送电子邮件。发件人电子邮件是 microsoft azure。但我收到错误响应:'535 5.7.139 身份验证失败,请求不符合成功身份验证的标准。请联系您的管理员。 MFA 已启用。我还生成了应用程序密码。谁能帮我解决这个问题。 发送邮件的代码片段-
var userTransporter = nodemailer.createTransport({
host: 'smtp.office365.com',
port: 587, // secure SMTP
secure: false,
auth: {
user:SENDER_EMAIL,
pass: SENDER_APP_PASSWORD,
}
});
var mailOptions = {
from: SENDER_EMAIL,
to: email,
template: path.join(__dirname, "../public/views/email-verification"),
context: {
token: otp,
email: email,
url: EMAIL_VERIFICATION_LINK,
name: user_name
},
};
let mail = await transporter.sendMail(mailOptions);
最佳答案
如果您使用两步身份验证,则需要创建应用密码。
登录您的 Microsoft 帐户。
- 安全
- 高级安全选项
- 应用密码
- 创建新的应用密码
transp: {
host: smtp.office365.com,
port: 587,
secure: false,
auth: {
user: '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="b8cdcbddcaf8ddd5d9d1d496dbd7d5" rel="noreferrer noopener nofollow">[email protected]</a>',
pass: 'AppPass'
}
}
关于node.js - 535 5.7.139 认证失败,请求不满足认证成功的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72225491/