פרוטוקול העברת דואר פשוט(SMTP) הוא פרוטוקול הדוא"ל הנפוץ ביותר העוסק בשליחת הודעות דואר אלקטרוני מיישומי לקוח לשרת הדוא"ל. במקרים שונים, לקוחות הדוא"ל מיושמים בתוך יישומי NET על מנת לשלוח מיילים באמצעות SMTP. עבור תרחישים כאלה, מאמר זה מכסה כיצד להתחבר לשרת SMTP באופן פרוגרמטי באמצעות C#. יתר על כן, דוגמאות הקוד מדגימות כיצד לשלוח דואר אלקטרוני דרך לקוח SMTP לאחר יצירת החיבור.
C# API לחיבור שרת SMTP
Aspose.Email for .NET הוא C# API שנועד ליצור יישומי לקוח דוא"ל רבי עוצמה. ה-API מאפשר לבצע פעולות אימייל מורכבות די בקלות בתוך כמה שורות קוד. יתר על כן, זה מאפשר לך לחבר שרתי SMTP באמצעות שרתי SOCKS ו-HTTP. אתה יכול להוריד את ה-DLL של ה-API או להתקין אותו באמצעות NuGet.
PM> Install-Package Aspose.Email
התחבר לשרת SMTP באמצעות C#
לפני חיבור לשרת SMTP, עליך לדעת את הדברים הבאים.
- שם משתמש
- סיסמה
- נמל
ברגע שיש לך אותם, תוכל להגדיר את לקוח ה-SMTP באמצעות השלבים הבאים.
- צור אובייקט במחלקה SmtpClient.
- הגדר שם משתמש, סיסמה ומספר יציאה באמצעות המאפיינים SmtpClient.Username, SmtpClient.Password ו-SmtpClient.Port בהתאמה.
- הגדר אפשרויות אבטחה באמצעות המאפיין SmtpClient.SecurityOptions.
דוגמת הקוד הבאה מראה כיצד להגדיר את ה-API עבור חיבור SMTP ב-C#.
// לדוגמאות מלאות וקבצי נתונים, נא עבור אל https://github.com/aspose-email/Aspose.Email-for-.NET
SmtpClient client = new SmtpClient("smtp.gmail.com");
// הגדר שם משתמש, סיסמה, יציאה ואפשרויות אבטחה
client.Username = "your.email@gmail.com";
client.Password = "your.password";
client.Port = 587;
client.SecurityOptions = SecurityOptions.SSLExplicit;
לאחר שהגדרת את ה-API, תוכל להתחבר לשרת SMTP באמצעות אחת מהאפשרויות הבאות.
התחבר ל-SMTP דרך SOCKS Proxy Server ב-C#
Aspose.Email מספק תמיכה עבור גרסאות 4, 4a ו-5 של פרוטוקול ה-proxy SOCKS. להלן השלבים להתחבר לשרת SMTP דרך שרת proxy SOCKS באמצעות Aspose.Email עבור .NET.
- אתחול SmtpClient עם כתובת המארח, שם המשתמש, הסיסמה והגדרות אחרות.
- צור אובייקט מהמחלקה SocksProxy והגדר את הכתובת והיציאה.
- הגדר את ה-proxy של הלקוח באמצעות המאפיין SmtpClient.Proxy.
- שלח אימייל בשיטת SmtpClient.Send().
דוגמת הקוד הבאה מראה כיצד להתחבר לשרת SMTP דרך SOCKS proxy באמצעות C#.
// לדוגמאות מלאות וקבצי נתונים, נא עבור אל https://github.com/aspose-email/Aspose.Email-for-.NET
SmtpClient client = new SmtpClient("smtp.domain.com", "username", "password");
client.SecurityOptions = SecurityOptions.SSLImplicit;
string proxyAddress = "192.168.203.142"; // proxy address
int proxyPort = 1080; // proxy port
SocksProxy proxy = new SocksProxy(proxyAddress, proxyPort, SocksVersion.SocksV5);
client.Proxy = proxy;
client.Send(new MailMessage("sender@domain.com", "receiver@domain.com", "Sending Email via proxy", "Implement socks proxy protocol for versions 4, 4a, 5 (only Username/Password authentication)"));
התחבר לשרת SMTP באמצעות שרת פרוקסי HTTP
להלן השלבים להתחבר לשרת SMTP באמצעות שרת פרוקסי HTTP.
- צור מופע של המחלקה HttpProxy ואתחול אותו עם IP ומספר יציאה.
- צור והגדר את האובייקט SmtpClient.
- הגדר פרוקסי HTTP באמצעות מאפיין SmtpClient.Proxy.
- שלח אימייל בשיטת SmtpClient.Send().
דוגמת הקוד הבאה מראה כיצד להתחבר לשרת SMTP באמצעות שרת פרוקסי HTTP.
// לדוגמאות מלאות וקבצי נתונים, נא עבור אל https://github.com/aspose-email/Aspose.Email-for-.NET
HttpProxy proxy = new HttpProxy("18.222.124.59", 8080);
using (SmtpClient client = new SmtpClient("host", 587, "username", "password"))
{
client.Proxy = proxy;
client.Send(new MailMessage(
"from@domain.com",
"to@domain.com",
"NETWORKNET-34226 - " + Guid.NewGuid().ToString(),
"NETWORKNET-34226 Implement socks proxy protocol for versions 4, 4a, 5 (only Username/Password authentication)"));
}
קבל רישיון API בחינם
אתה יכול לנסות ולהשתמש ב-Aspose.Email עבור .NET בחינם על ידי קבלת רישיון זמני.
סיכום
במאמר זה, למדת כיצד להתחבר לשרת SMTP באמצעות C#. יתר על כן, המדריך שלב אחר שלב ודוגמאות קוד הראו כיצד להתחבר לשרת ה-SMTP באמצעות שרתי SOCKS ו-HTTP. תוכל לחקור עוד על ממשק ה-API לאימייל של C# באמצעות תיעוד.