在特定情况下,我们正在创建一个邮件传递系统,我们需要使用STARTTLS才能使用nodemailer传递邮件。
我们已经创建了如下的nodemailer邮件传输器:
var mailer = require("nodemailer");
var smtpTransport = mailer.createTransport(
{
host: 'smtp.example.com',
port: 587,
secure: false, // true for 465, false for other ports
requireTLS: true,
auth:
{
user: "example@example.com",
pass: "example"
}
});
使用此配置,可以发送和发送邮件。我们甚至使用mxtoolbox检查邮件的状态,所有内容看上去都是绿色的(也就是有效的)。不过,在我们的其中一个帐户上,该邮件进入了垃圾邮件。。此外,在从Gmail本身检查邮件本身的安全性配置后,它表示已使用 TLS。我在this link上阅读的文档明确指出以下内容:
requireTLS 强制客户端使用STARTTLS。如果无法升级连接或失败,则返回错误。
我们正在从服务器收到成功的响应,但是,与此代码块一起传输的邮件仅通过一个帐户进入了垃圾邮件,但是我们不能忽略它,因为它可能会发生多次,而我们不了解。有趣的部分从这里开始。
当我们将此代码块更改为以下代码时:
var smtpTransport = mailer.createTransport(
{
host: 'smtp.example.com',
port: 465,
secure: true, // true for 465, false for other ports
auth:
{
user: "example@example.com",
pass: "example"
}
});
邮件将直接发送到收件箱,包括使用STARTTLS拒绝邮件的帐户。。但是,由于服务器是按照这种方式配置的,因此我们需要使用STARTTLS来传递这些邮件。
我们如何才能实际验证配置正确?谢谢您的帮助。