תכונות שירות - MailMessage
הצפנה ופענוח הודעות
Aspose.Email מספקת אפשרות להצפין ולפענח הודעות אימייל. נושא זה מציג כיצד ניתן לטעון הודעה קיימת או חדשה ולהצפין אותה באמצעות MailMessage. ה encrypt() ו decrypt() המתודות מחזירות את האובייקט MailMessage עבור האפקטים המיושמים ויש לשים לב לכך בעת הצפנה/פענוח הודעות. הצפנה ופענוח הודעות כוללים את הצעדים הבאים:
- צור הודעה חדשה או טען קיימת
- הצפן את ההודעה באמצעות קובץ תעודה
- שלח את ההודעה או שמור אותה
- פענח את ההודעה כנדרש
מקטע הקוד הבא מראה כיצד להצפין ולפענח הודעות.
בדיקת הודעה אם היא מוצפנת
Aspose.Email MailMessage מחלקה מאפשרת לבדוק אם הודעה מוצפנת או לא. ה isEncrypted המאפיין של MailMessage מאפשר לבדוק זאת כפי שמודגם בדוגמת הקוד שלהלן.
הצפנת הודעה עם X509Certificate
Aspose.Email מספקת API לעבודה עם הודעות מוצפנות עם X509Certificate:
MailMessage מחלקה כוללת את המתודות הבאות לעבודה עם הצפנת הודעות:
- public MailMessage attachSignature(X509Certificate2 certificate, boolean detached) - יוצר הודעה חתומה.
- public MailMessage attachSignature(X509Certificate2 certificate) - יוצר הודעה חתומה.
- public X509Certificate2[] checkSignatureCert() - בודק חתימה של MailMessage קיים.
- public MailMessage decrypt(X509Certificate2 certificate)
- public MailMessage encrypt(X509Certificate2 certificate)
- public MailMessage encrypt(X509Certificate2[] certificates)
הגדרת אפשרויות מקומיות עבור Aspose.Email
אתה יכול להשתמש ב LocaleOptions מחלקה למקרה של מקומית ברירת מחדל בלתי מזוהה ומגדירה את המקומית המתאימה ביותר עבור ספריית Aspose Email. היא מציעה את המתודות הבאות לביצוע המשימה:
- getLocale() - מחזיר את המקומית ברירת המחדל עבור Aspose.Email.
- setLocale(Locale locale) ו setLocale(String localeName) - מגדיר את המקומית ברירת המחדל עבור Aspose.Email.
- clear() - מנקה את המקומית ברירת המחדל עבור Aspose.Email. תשתמש במקומית ברירת המחדל עבור Java.
דוגמת הקוד הבאה מדגימה כיצד לטעון הודעת אימייל מקובץ תוך שימוש בהגדרות המקומיות שצוינו:
final Locale locale = new Locale("en", "DE");
Locale.setDefault(locale);
// set Locale for Aspose Email lib
LocaleOptions.setLocale("en-US");
// or
//LocaleOptions.setLocale(new Locale("en", "US"));
MailMessage.load("document.msg");
קוד זה מבטיח שהיישום וספריית Aspose.Email משתמשים במקומיות שהוגדרו לטיפול בשפה, מדינה והקפדות תרבותיות.
הודעות אימייל המכילות קבצים מצורפים ב‑TNEF
Transport Neutral Encapsulation Format (TNEF) הוא פורמט קבצים מצורפים קנייני של אימייל המשמש ב‑Microsoft Outlook ו‑Microsoft Exchange Server. ה‑API של Aspose.Email מאפשר לך לקרוא הודעות אימייל עם קבצים מצורפים בפורמט TNEF ולשנות את תוכנם. לאחר מכן ניתן לשמור את האימייל כאימייל רגיל או באותו פורמט, תוך שמירה על הקבצים המצורפים ב‑TNEF. מאמר זה מציג דוגמאות קוד שונות לעבודה עם הודעות המכילות קבצים מצורפים ב‑TNEF.
קריאת הודעה תוך שמירה על קבצים מצורפים ב‑TNEF
מקטע הקוד הבא מראה כיצד לקרוא הודעה תוך שמירה על קבצים מצורפים בפורמט TNEF.
עדכון משאבים בקובץ מצורף TNEF ושמירה על פורמט TNEF
מקטע הקוד הבא מראה כיצד לעדכן משאבים בקובץ מצורף TNEF ולשמר את פורמט ה‑TNEF.
הוספת קבצים מצורפים חדשים להודעה ראשית המכילה TNEF
יצירת TNEF EML מתוך MSG
קבצי Outlook MSG מכילים לעיתים מידע כמו טבלאות וסגנונות טקסט שעשויים להשתבש אם הם מומרים ל‑EML. יצירת הודעות TNEF מקבצים כאלה מאפשרת לשמור על העיצוב ואפילו לשלוח הודעות אלה דרך לקוחות האימייל תוך שמירה על העיצוב.
ליצירת ה‑TNEF, ניתן להשתמש בקוד הדוגמה הבא.
זיהוי אם הודעה היא TNEF
עיבוד הודעות קופצות
זה מאוד נפוץ שהודעה שנשלחת למקבל עשויה לחזור משיקולים שונים כגון כתובת מקבל לא חוקית. ל‑Aspose.Email API יש את היכולת לעבד הודעה כזו על מנת לבדוק האם היא הודעת דואר קפוצה או הודעת דואר רגילה. ה בדיקת הודעות קופצות שיטה של MailMessage מחלקה מחזירה תוצאה תקפה אם הודעת האימייל היא הודעה חוזרת.
מאמר זה מציג את השימוש ב‑ BounceResult מחלקה המספקת את היכולת לבדוק אם הודעה היא אימייל חוזר. היא גם נותנת מידע מפורט על הנמענים, הפעולה שננקטה והסיבה להודעה.
התעלמות משגיאות
הספרייה מציעה ExceptionManager מחלקה כדי ליישם יכולת התעלמות משגיאות בתפקודיות היישום שלך. קטע הקוד שלהלן מדגים כיצד להגדיר קריאה חוזרת (callback) לטיפול בשגיאות:
ExceptionManager.setIgnoreExceptionsHandler( new IgnoreExceptionsCallback() {
//exception path: {Module}\{Method}\{Action}\{GUID}
//example: MailMessage\Load\DecodeTnefAttachment\64149867-679e-4645-9af0-d46566cae598
public boolean invoke(AsposeException ex, String path) {
//Ignore all exceptions on MailMessage.Load
return path.equals("MailMessage\\Load");
}
});
או להשתמש באלטרנטיבה:
ExceptionManager.setIgnoreAll(true);
בנוסף, ניתן להגדיר callback עבור יומן שגיאות שהודחת:
ExceptionManager.setIgnoreExceptionsLogHandler( new IgnoreExceptionsLogCallback() {
public void invoke(String message) {
System.out.println("=== EXCEPTION IGNORED === " + message);
}
});
המשתמש יקבל הודעה שהשגיאה ניתנת להתעלמות באמצעות הודעת שגיאה. לדוגמה:
חריגה בהודעה:
AsposeArgumentException: properties should not be empty.
אם ברצונך להתעלם משגיאה ולמשיך הלאה, תוכל להשתמש ב:
ExceptionManager.getIgnoreList().add("MailMessage\\Load\\DecodeTnefAttachment\\64149867-679e-4645-9af0-d46566cae598")
Invalid TNEF Attachment will be interpreted as regular attachment.
מנתח ספאם בייזי
Aspose.Email מספקת את אפשרות סינון הדוא"ל באמצעות מנתח הספאם הבייזי. היא מספקת את SpamAnalyzer מחלקה למטרה זו. מאמר זה מראה איך להכשיר את המסנן כדי להבדיל בין הודעות דואר זבל והודעות רגילות בהתבסס על מסד נתוני המילים.
קבלת פתיחה ואפילוג מהודעות EML
בפורמט MIME, הפreamble הוא הטקסט שמופיע אחרי הכותרות ולפני גבול ה-multipart הראשון. הepilogue הוא הטקסט שמופיע אחרי הגבול האחרון ולפני סוף ההודעה. טקסט זה בדרך כלל אינו גלוי למשתמשים בתוכניות קריאת דוא"ל, אך יישומי MIME מסוימים עשויים להשתמש בו כדי להכניס הערות למקבלים שקוראים את ההודעה באמצעות תוכנות אינן תואמות ל‑MIME.
קטע הקוד הבא מציג כיצד לקבל את הטקסט הפתיחה והאפילוג מהודעת EML, שניתן להשיג באמצעות השיטות המתאימות של MailMessage מחלקה:
- setPreamble(String value) - מקבל או מגדיר טקסט פתיחה.
- setEpilogue(String value) - מקבל או מגדיר טקסט אפילוג.
// Gets or sets a preamble text.
public String getPreamble, setPreamble
// Gets or sets an epilogue text.
public String getEpilogue, setEpilogue