【问题标题】:smtp client throwing error message operation has timed outsmtp 客户端抛出错误消息操作已超时
【发布时间】:2022-01-27 13:51:16
【问题描述】:

我正在使用带有 office365 邮件服务器的 SmtpClient 来发送电子邮件。但是每次我尝试 smtpclient.Send(msg) 时,它都会抛出 'Operation has timed out' smtpexception。我已经尝试了所有早期的选项,比如将端口更改为 587 并增加超时值,但没有任何效果。谁能帮我吗。下面是我的源代码。

    using (MailMessage msg = new MailMessage
    {                    
        From = new MailAddress("Sender@ourdomain.com"),
        Subject = this.Subject,
        Body = this.Body,
        IsBodyHtml = true
    })
    {
        msg.To.Add(new MailAddress("Receiver@ourdomain.com"));
        using (SmtpClient client = new SmtpClient
        {
            Host = "smtp.office365.com",
            DeliveryMethod = SmtpDeliveryMethod.Network,
            EnableSsl = true,
            UseDefaultCredentials = false,                        
            Credentials = new System.Net.NetworkCredential("username", "password"),
            Port = 587
        })
        {
            try
            {
                client.TargetName = "STARTTLS/smtp.office365.com";
                client.Send(msg);
            }
            catch (Exception)
            {
                throw;
            }
        }
    }

【问题讨论】:

标签: c# office365api smtpclient


【解决方案1】:

基本上,当您无法连接到您的 SMTP 服务器时会发生此问题,这就是超时发生的原因。您收到此消息是因为超过了默认的 Timeout 值 100 秒。

可能出现此问题的原因可能有几个问题,即您需要修复的错误 SMTP 地址、SMTP 拒绝、端口设置、SSL 配置等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-26
    • 1970-01-01
    • 2012-01-18
    • 2020-08-05
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多