繁体   English   中英

C# - SMTP - GoDaddy - 发送电子邮件

[英]C# - SMTP - GoDaddy - Send Email

我究竟做错了什么? 我正在尝试使用带有 GoDaddy 虚拟主机的 c# 发送电子邮件。

SmtpClient client = new SmtpClient("relay-hosting.secureserver.net", 465);
client.EnableSsl = true;
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential("emailGODADDY", "password");

MailMessage message = new MailMessage("emailGODADDY", "otherEmail");
message.Subject = txtSubject.Text;
message.Body = txtContent.Value;

client.Send(message);

使用 Go Daddy 的共享主机帐户,您需要在端口 25 而不是端口 465 上发送电子邮件。此外,当您从主机帐户发送电子邮件时,relay-hosting.secureserver.net 不需要您使用用户名和密码进行身份验证。

只需在下面注释掉它就会正常工作

//client.EnableSsl = false;

也使用端口 25。

每个 smtp 服务器都有自己的凭据,与其他凭据不同。

根据 microsoft client.UseDefaultCredentials 应尽可能不使用。

你可以试试省略这行代码.....

client.UseDefaultCredentials = false;

如果这不起作用,请尝试使用

client.EnableSsl = false;

因为有些服务器不使用安全连接。

您也可以使用此代码进行检查

client.DeliveryMethod = SmtpDeliveryMethod.Network;

好的! 我已经想通了。

哇,我花了很多时间试图让它运行起来。 我有使用 Plesk(共享)的经济型 Windows 主机,以及一个 Office365 电子邮件帐户。 我学到了无法创建连接到 smtp.office365.com 的 SMTP 客户端的艰难方法,因为此共享托管包阻止了端口 587。 TXT 记录、SPF 记录也无济于事。 浪费了很多时间。

但是,唉,这正是对我有用的。 我在 web.config 中添加了以下内容,但我认为您可以将相同的信息构建到您的 SMTP 客户端对象中。 不过,这工作正常。 任何。

<system.net>
  <mailSettings>
    <smtp from="noreply@MyDomain.com">        
      <network host="relay-hosting.secureserver.net" port="25" />        
    </smtp>
  </mailSettings>
</system.net>

在后面的代码中,我确保 MailMessage 中使用的 FROM 地址与 web.config 中的 FROM 值完全匹配。 这真的很重要吗? 不确定,但它们匹配,并且有效。 任何。

FROM 地址 (noreply@) 不作为电子邮件存在,也不是别名等。它只是来自托管网站的同一域的内容。

我的 TO 地址是从 web.config (AppSettings["SendTo"]) 中检索的。 这是我在此域中的真实电子邮件地址(我的 Office365 电子邮件地址)。 我不确定您是否可以向域外的内容发送电子邮件,因为我还没有测试过。

...显然MailMessage(msg)不完整......

msg.To.Add(new MailAddress(ConfigurationManager.AppSettings["SendTo"].ToString()));
msg.From = new MailAddress("noreply@MyDomain.com");


var smtp = new SmtpClient 
{       
 // nothing is needed here  
};
smtp.Send(msg);

创建您的客户端并发送消息!

好极了! 我不得不将 noreply@ 电子邮件列为非垃圾邮件,但现在它已按预期到达。 请记住,您每天只有有限数量的中继电子邮件,因此请明智地使用它们! 希望这可以帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM