我最近在从网络应用程序发送电子邮件时遇到问题。我不断收到来自邮件中继的连接拒绝异常(而且它始终是相同的邮件中继)。在与邮件团队深入讨论后,我被告知我没有使用 MX 记录来发送邮件。然而,我想我是。 MX 记录是 mailhub-us.xxx.us.net。这是我用来发送电子邮件的代码(显然我将 mailhub 地址称为服务器)
MailMessage msgMail = new MailMessage();
****Some code to populate msgMail
SmtpClient smtpClient = new SmtpClient("mailhub-us.xxx.us.net");
smtpClient.Send(msgMail);
是的,我知道我最好使用 <mailsettings>
在 web.config 中(我在研究过程中学到的东西以及我打算更正的东西)。我已经检查以确保使用 nslookup 在 DNS 上设置了 MX 记录,并且为此条目配置了 3 个服务器。
此时我有点困惑,因为我认为我使用的是 MX 记录,因此故障转移应该会自动发生。我这么说是愚蠢还是我还缺少其他东西?感谢在此问题上的任何帮助。
在你的 web.config
文件中添加这个
<system.net>
<mailSettings>
<smtp from="fromemail">
<network host="hostname" defaultCredentials="false"
port="xx" userName="xxxx" password="xxx" />
</smtp>
</mailSettings>
在你的后端代码中,你可以做类似的事情
var message = new MailMessage();
message.IsBodyHtml = true;
message.From = new MailAddress(from);
message.To.Add(to);
message.Subject = subject;
message.Body = msg;
var client = new SmtpClient();
client.Send(message);
我是一名优秀的程序员,十分优秀!