簡體   English   中英

通過SMTP發送郵件

[英]Sending mail Through SMTP

我正在通過SMTP客戶端發送郵件。 我已指定服務器地址用戶名和密碼。

var smtpClient= new SmtpClient(server,portNumber )
                                 {
                                     DeliveryMethod = SmtpDeliveryMethod.Network,
                                     EnableSsl = false,
                                     Timeout = 10000
                                 };
smtpClient.Credentials = new NetworkCredential(username, password, domain);
 var sender = new MailAddress(EmailAddess, "abc");
                var message = new MailMessage()
                {
                    IsBodyHtml = false,
                    Sender = sender,
                    From = sender,
                    Body = "Plain text test",
                    Subject = "Test Message, Please ignore"
                };
smtpClient.Send(message);

如果服務器名和端口正確,則即使用戶名和密碼不正確,它也不會驗證憑據並發送郵件。 我是否需要為憑證添加其他驗證?

如果服務器名和端口正確,則即使用戶名和密碼不正確,它也不會驗證憑據並發送郵件。 我是否需要為憑證添加其他驗證?

取決於服務器。 通常,內部服務器(即無法通過Internet訪問)將很高興地中繼來自IP的電子郵件,而無需用戶名和密碼。 例如,我公司的內部電子郵件服務器接受某些IP范圍的電子郵件,而無需輸入用戶名或密碼。

同樣,如果電子郵件進入服務器,則通常不需要身份驗證。 通常只需要進行中繼(即,當服務器應該將電子郵件發送到另一台服務器時)。

您可以嘗試這樣。

 System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
    message.To.Add(ToEmail);
    message.Subject = Subject;
    message.From = new System.Net.Mail.MailAddress(FromEmail);
    message.Body = Message;
    System.Net.Mail.SmtpClient smtpAddress = new System.Net.Mail.SmtpClient("IP");
    smtpAddress.Send(message);

ToEmail =誰將接收電子郵件。 主題=電子郵件的主題。 FromEmail =誰發送了電子郵件。 (可以是任何內容)Message =消息。 IP =是SMTPCLIENT IP

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM