【发布时间】:2018-08-17 02:04:28
【问题描述】:
我正在尝试使用 Office365 从 Azure Web App 发送电子邮件。稍后,我们会将其移至 Azure Web Job 或 Azure Functions。
以下示例代码可在本地开发机器以及使用同一端口 587 的本地 SMTP 服务器的 Azure 中工作 em>。但是,与本地计算机相同的凭据会从 Azure 中的 smtp.office365.com 引发异常。
问题似乎出在 Azure 和 Office 365 之间。 任何帮助将不胜感激!
Sending email from an Azure App Service using an O365 SMTP server
MailMessage msg = new MailMessage();
msg.To.Add(new MailAddress("To Email Address", "Benjamin"));
msg.From = new MailAddress("From Email Address", "You");
msg.Subject = "Azure Web App Email using smtp.office365.com";
msg.Body = "Test message using smtp.office365.com on Azure from a Web App";
msg.IsBodyHtml = true;
SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential("O365 UID", "O365 PASS");
client.Port = 587;
client.Host = "smtp.office365.com";
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.EnableSsl = true;
client.Send(msg); <-- Line 34
异常
System.Net.Mail.SmtpException:SMTP 服务器需要安全 连接或客户端未通过身份验证。服务器响应 是:5.7.57 SMTP;客户端未通过身份验证以发送匿名邮件 在 MAIL FROM [XXXXXX.namprd02.prod.outlook.com] 期间 System.Net.Mail.MailCommand.CheckResponse(SmtpStatusCode statusCode, 字符串响应)在 System.Net.Mail.MailCommand.Send(SmtpConnection conn, Byte[] 命令, MailAddress from, Boolean allowUnicode) at System.Net.Mail.SmtpTransport.SendMail(邮件地址发件人, MailAddressCollection 收件人,字符串 deliveryNotify,布尔值 allowUnicode、SmtpFailedRecipientException& 异常)在 System.Net.Mail.SmtpClient.Send(MailMessage message) 在第 34 行
【问题讨论】:
标签: c# asp.net azure smtp office365