使用 .NET Framework 透過 SSL SMTP 發送電子郵件
許多電子郵件伺服器需要 SSL 連線才能安全地傳送電子郵件。以下是在.NET Framework 中實現此目標的方法:
問題:
使用預設方法透過連接埠465 上的SSL SMTP 伺服器發送電子郵件通常會導致逾時由於System.Net.Mail 中存在隱式SSL 支援問題。
解決方案:
1.使用GMail 的SMTP 伺服器:
如果您的電子郵件伺服器支援GMail 的電子郵件支援GMail 的SMTP 設置,您可以利用他們的SSL SMTP 伺服器並調整您提供的程式碼片段:
<code class="csharp">using System.Web.Mail; using System; //... SmtpMail.SmtpServer = "smtp.gmail.com:465";</code>
2.用於自訂SSL 設定的CDO 庫:
您可以使用Microsoft 協作數據對象(CDO) 庫來配置自定義SSL 設置:
<code class="csharp">using System.Web.Mail; using System; using System.Web.Mail; //... myMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpusessl", "true"); myMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", "<Your SMTPO Server>"); myMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", "<Your SMTP Port>");</code>
3.顯式STARTTLS:
對於支持顯式STARTTLS(連接埠587)的伺服器,請使用以下程式碼:
<code class="csharp">using System.Net.Mail; using System; //... _SmtpServer.EnableSsl = true; // Ensure encryption System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;</code>
透過設定自訂SSL 設定或利用GMail 的SMTP 伺服器,您可以使用.NET Framework 透過SSL SMTP 成功傳送電子郵件。
以上是如何使用.NET Framework透過SSL SMTP安全地發送電子郵件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!