gpt4 book ai didi

c# - .NET SMTP 邮件 - 错误 = helo 命令被拒绝需要完全限定的主机名

转载 作者:行者123 更新时间:2023-11-30 14:34:57 24 4
gpt4 key购买 nike

我正在尝试在 .NET 控制台应用程序中发送电子邮件。我有一个带有 i.P. 的 SMTP 服务器。地址 X.X.X.X(已 sanitizer 以保护无辜者)。

已设置 SMTP 服务器(已配置中继)以允许来自托管 .NET 控制台应用程序的服务器发送电子邮件,并将该电子邮件发送到外部世界。

我已经使用托管控制台应用程序的服务器的 telnet 对此进行了测试。我使用 SMTP 服务器的 I.P 从托管控制台应用程序的服务器成功发送了一封带有 telnet 控制台的电子邮件。地址。使用 telnet 时不需要身份验证。我没有获得任何连接凭据。

但是当我尝试在 .NET 应用程序中执行此操作时,出现以下错误:

Syntaz error, command unrecognized. The server response was: : Helo command rejected: need fully-qualified hostname

这是我的代码:

string mailMessagetest = "test";
string subjecttest = "test";
List<string> recipienttest = new List<string>();
recipienttest.Add("me@mydomain.com");

utility.SendMail(recipienttest, subjecttest, mailMessagetest);

这里是 SendMail 函数:

        public static void SendMail(List<string> recipient, string subject, string message)
{
MailMessage mailMessage = new MailMessage();
mailMessage.From = new MailAddress("myfriend@mydomain.com");

foreach (string to in recipient)
{
mailMessage.To.Add(to);
}

mailMessage.Subject = subject;
mailMessage.Body = message;

SmtpClient client = new SmtpClient();
client.Host = "X.X.X.X";
client.Port = 25;
client.Send(mailMessage);
}

最佳答案

将主机名从 IP 地址更改为其名称,例如“smtp.provider.com”或其内部“mailserver.domain”。

更新:

尝试阅读此 system.net.mail.smtpclient fqdn required还有这个the FQDN is not sent when you send a HELO or EHLO .

关于c# - .NET SMTP 邮件 - 错误 = helo 命令被拒绝需要完全限定的主机名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13062562/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com