我正在尝试从我的 Outlook 帐户(Office 365 电子邮件)向我自己/组织中的其他人发送电子邮件。以及从我的电子邮件发送给可能在办公室或不在办公室的用户。
我正在使用 Nodejs 和 Typescript,这一切都是通过我自己的电子邮件(我们组织的电子邮件)在服务器上发生的。因此,这应该不需要人工交互/访问令牌或任何不应过期的内容,需要手动设置,而应该是自动的或设置一次。
我尝试了以下设置
const mailOptions = {
from: "[email protected]",
to: "[email protected]",
subject: req.title,
text: req.contents,
};
const info = await transporter.sendMail(mailOptions);
export const transporter = nodemailer.createTransport({
service: "Outlook365",
auth: {
user: "[email protected]",
pass: "pass",
},
});
这是我遇到的错误
[Node] error: Invalid login: 535 5.7.139 Authentication unsuccessful, the request did not meet the criteria to be authenticated successfully. Contact your administrator. [VI1PR0501CA0022.eurprd05.prod.outlook.com]
这是在本地开发时在本地主机上发生的,但稍后我会将其部署到heroku。
我尝试过的:
我需要发生什么:
我在组织中有电子邮件 A,并且我们有一个共享收件箱 B。理想情况下,我能够从 B 向 B 发送电子邮件(当用户向我们发送消息时,我希望它在共享收件箱中收到)
能够从 B(共享收件箱)发送给我们组织外部的其他用户(我们的应用程序用户)
经过几个小时的搜索和阅读文档,我无法确定这是否可行。所有解决方案都提到 Azure,而我什至不在我的应用程序中使用 Azure。我只需要通过我们的商务电子邮件(共享收件箱电子邮件)向我们自己和我们的用户发送电子邮件。我不使用任何 azure 服务,文档很大并且很难导航,所以我不知道发生了什么。
您需要通过将“启用安全默认值”切换为“否”来禁用 Azure 安全默认值。
您需要等待一段时间(几分钟),问题就会解决。
是否启用了多重身份验证?然后你必须生成应用程序密码并使用它
去吧,爸爸用户,这就是我解决它的方法: