smtp.live.com – 邮箱不可用。 服务器响应为:5.7.3请求的操作中止; 用户未经过身份validation

我已经在stackoverflow上阅读了其他答案。 但这些解决方案都不适合我。

我正在尝试通过live.com发送电子邮件,但无法使用它。

错误消息:

mailbox unavailable. The server response was: 5.7.3 requested action aborted; user not authenticated 

代码:

 MailMessage mail = new MailMessage(); mail.From = new MailAddress("email@live.com"); mail.To.Add("someone@someone.com"); mail.Subject = "hello"; mail.Body = "awefkljj kawefl"; mail.IsBodyHtml = false; SmtpClient smtp = new SmtpClient("smtp.live.com", 587); smtp.EnableSsl = true; smtp.Credentials = new NetworkCredential("email@live.com", "password"); smtp.Send(mail); 

您是否可以使用上述代码发送电子邮件?

它在去年之前有效,但它现在已经不复存在了。

什么改变了?

我遇到了一个问题,我无法使用某些主机的smtp.live.com SMTP服务器发送电子邮件 – 特别是Azure主机。 在我的情况下,SMTP尝试来自我以前从未用于登录的主机,因此尝试被5.7.3错误阻止:

信箱不可用。 服务器响应为:5.7.3请求的操作中止; 用户未经过身份validation

解决方案是浏览到帐户设置,在最近的活动中找到SMTP请求,然后选择“这是我”:

验证SMTP尝试

在我的情况下,我使用的是Gmail帐户,但是却告诉了服务。 我变了:

 smtp.Host = "smtp.live.com"; 

至:

 smtp.Host = "smtp.gmail.com"; 

这解决了我的问题。

这解决了我的问题:

 smtpClient.UseDefaultCredentials = false; smtpClient.Credentials = new NetworkCredential("myaccount@live.com","mypassword"); 

在设置凭据之前, UseDefaultCredentials属性应设置为false

如果您在2017年遇到此问题,并且您认为您可能正在使用Office 365帐户,请务必将主机更改为“smtp.office365.com”。 它对我有用。