gpt4 book ai didi

c# - 使用 SMTP 发送电子邮件并控制发件人地址

转载 作者:行者123 更新时间:2023-11-30 21:14:31 25 4
gpt4 key购买 nike

我正在尝试使用 c# 应用程序发送电子邮件,下一个代码正在运行。

SmtpClient MailClient = new SmtpClient("smtp.gmail.com");
MailClient.EnableSsl = false;
MailClient.Credentials = new NetworkCredential("Ryan.White", "Password");
MailMessage Msg = new MailMessage();
Msg.From = new MailAddress("Sender.name@gmail.com");
Msg.To.Add(new MailAddress("Ryan.White@gmail.com"));
Msg.Subject = "testSub";
Msg.Body = "testBody";

MailClient.Send(Msg);

但是 Gmail 的 SMTP 服务器将 gmail 电子邮件地址 (Ryan.White@gmail.com) 作为发件人,

不管 MSG.FROM 地址 (Sender.name@gmail.com)。

是否可以使用 C#/.NET 发送电子邮件并控制发件人地址?

或者发送一封没有身份验证的电子邮件?

我知道在 UNIX 中您可以在“邮件”命令中控制发件人地址。

最佳答案

Gmail 这样做是出于安全原因,否则垃圾邮件发送者很容易发送看似来自虚假地址的电子邮件。

您已正确编码,C# 将尝试将发件人地址设置为 Sender.Name@gmail.com,但 SMTP 服务器拥有最终决定权。如果您有权以另一个用户的身份发送,这将有效,就像在您以管理员身份进行身份验证的 Exchange 服务器环境中一样。但是,Gmail 似乎不允许这样做。您需要以 Sender.name 身份登录才能以该用户身份发送电子邮件。

关于c# - 使用 SMTP 发送电子邮件并控制发件人地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6209163/

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