【问题标题】:SMTP gmail Client works strange with different hostSMTP gmail 客户端与不同的主机一起工作很奇怪
【发布时间】:2014-12-27 19:35:22
【问题描述】:

我有以下用 C# 编写的用于发送消息的代码:

bool ret = false;
MailAddress fromAddress = new MailAddress("addressfrom@gmail.com", "Name");
string fromPassword = "MyPassw";

        try
        {
            SmtpClient smtp = new SmtpClient
            {
                //Host = "smtp.gmail.com",
                //Port = 587,
                //EnableSsl = true,

                Host = "rs.t-home.mk",
                Port = 25,
                EnableSsl = false,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials = new System.Net.NetworkCredential(fromAddress.Address, fromPassword)
            };

            System.Web.UI.WebControls.MailDefinition md = new System.Web.UI.WebControls.MailDefinition();
            md.From = "addressfrom@gmail.com";
            md.IsBodyHtml = false;
            md.Subject = subject;
            System.Collections.Specialized.ListDictionary replacements = new System.Collections.Specialized.ListDictionary();
            MailMessage msg = md.CreateMailMessage("mailTo@address.com", replacements, body, new System.Web.UI.Control());//belinaljupce@belina.com.mk
            smtp.Send(msg);
            ret = true;
        }
        catch
        {
            ret = false;
        }

在本地测试此代码时,使用此 SmtpClient 设置:

Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true

一切都很好,我可以发送消息,也可以进入我的 Gmail 帐户的发送文件夹,我可以看到来自此 SmtpClient 的所有发送消息

但是当我在服务器上发布这段代码时,我必须使用这个 SmtpClient 设置:

Host = "rs.t-home.mk",
Port = 25,
EnableSsl = false

我可以发送电子邮件,正常情况下,它工作正常,但是在我的 Gmail 帐户的发送文件夹中,我看不到来自此 SmtpClient 的发送消息,尽管邮件已发送(我已经检查过,并且“ mailTo@address.com" 接收消息) 所以我很好奇是什么原因造成的,想知道如何解决这个问题。

【问题讨论】:

  • 第二种情况与 Gmail 有什么关系?您通过 rs.t-home.mk 发送的电子邮件 - 通过该服务器发送的电子邮件如何最终进入您的 Gmail 发件箱?
  • 基本上,我是前端开发人员,托管我的页面的公司告诉我,我必须使用此设置。我仍然不知道这是如何工作的,因为我有 gmail那是通过 rs.t-home.mk 发送我的消息,但它正在工作,每当我从“from@gmail.com”发送邮件时,当我检查“sendTo@gmail.com”时,邮件是从“ from@gmail.com”,但是当我打开“from@gmail.com”时,文件夹发送为空

标签: c# email gmail smtpclient


【解决方案1】:

我可以发送电子邮件,正常情况下,它工作正常,但是在我的 Gmail 帐户的发送文件夹中,我看不到来自此 SmtpClient 的发送消息,尽管邮件已发送(我已经检查过,并且“ mailTo@address.com”收到消息)所以我很好奇是什么原因造成的,想知道如何解决这个问题。

这是因为 rs.t-home.mk 不是 Gmail SMTP 服务器。更简单的“修复”是将您的 Gmail 帐户包含在密件抄送中。

【讨论】:

    猜你喜欢
    • 2023-01-26
    • 1970-01-01
    • 2019-05-16
    • 1970-01-01
    • 1970-01-01
    • 2010-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多