חילוץ תוכן הודעות מדוא"ל
הצגת מידע הודעת דוא"ל על המסך
ה MailMessage מייצג הודעת דוא"ל ומאפשר למפתחים לגשת למאפייני הודעת הדוא"ל. מידע הכותרת (שנדון ב- חילוץ כותרות הודעת דוא"ל) ניתן לחלץ ולבצע מניפולציות בדרכים שונות. מאמר זה מסביר כיצד להציג מידע נבחר מכותרת הודעת דוא"ל ואת גוף ההודעה על המסך.
- צור מופע של MailMessage.
- טען הודעת דוא"ל למופע MailMessage.
- הצג את תוכן הודעת הדוא"ל על המסך.
הקוד למטה מראה כיצד לטעון הודעת דוא"ל ולהציג את תוכנה - ממען, נמען, נושא וגוף ההודעה - על המסך.
קבלת תאריך ושעה של ההודעה
ה MailMessage מחלקה יכולה לשמש לאחזור תאריך ההודעה ב-UTC או באיזור זמן מקומי. מידע זה ניתן לסכם כדלקמן:
- MailMessage.getDate() - מחזיר תאריך ב-UTC
- MailMessage.getLocalDate() - מחזיר תאריך באיזור הזמן המקומי
- MailMessage.isLocalDate מחזיר true, אם MailMessage.getDate() נמצא באיזור הזמן המקומי
חילוץ כותרות הודעת דוא"ל
כותרת ההודעה מייצגת סט של שדות כותרת המוגדרים על‑ידי אינטרנט ו‑RFC ונכללים בהודעות דוא"ל באינטרנט. ניתן להגדיר כותרת הודעה באמצעות ה- MailMessage class. סוגי כותרות נפוצים מוגדרים ב‑ HeaderType מחלקה. זו מחלקה סגורה הפועלת כמו מונה רגיל.
לחילוץ כותרות מדוא"ל, פעל לפי הצעדים הבאים:
- צור מופע של מחלקת MailMessage.
- טען הודעת דוא"ל במופע של מחלקת MailMessage.
- לאחר שטעונה הודעת דוא"ל, נוכל לקבל את תכניה הגולמי. מחלקת MailMessage עצמה מכילה מאפיינים כגון From, To, Cc, Subject וכו’. ניתן לחלץ מאפיינים אלה מהכותרות.
- הצג את התוכן הגולמי.
קבלת ערכי כותרת מפוענחים
קבלת ושינוי של כותרת ה-Disposition של המשאב המקושר
ניתן לגשת למשאב המקושר ולבצע עליו מניפולציות תכנותית באובייקט הודעת האימייל. ה getContentDisposition() שיטה של LinkedResource מחלקה משיגה את כותרת Content-Disposition. דוגמת הקוד למטה מדגימה כיצד לגשת ולשנות את שם הקובץ של המשאב המקושר:
MailMessage eml = MailMessage.load(fileName);
eml.getLinkedResources().get_Item(0).getContentDisposition().setFileName("changed.png");
קבלת גוף HTML כטקסט פשוט
ה MailMessage מחלקה מספקת את היכולת לחלץ את גוף ה-HTML של ההודעה כטקסט פשוט. המחלקה MailMessage מספקת GetHtmlBodyText מתודה שמחזירה את גוף ה-HTML בטקסט פשוט. המתודה GetHtmlBodyText מקבלת פרמטר בוליאני שמציין האם הגוף יכיל כתובות URL או לא. העברת הפרמטר כ-true מציינת שהגוף של ה-HTML צריך להכיל כתובות URL.
מקטע הקוד הבא מדגים את השימוש במתודה GetHtmlBodyText כדי לחלץ את גוף ה-HTML של האימייל כטקסט פשוט.
שחזור כתובות X.500 של Exchange מאימיילים
Aspose.Email for Java מאפשרת לך לגשת לכתובות X.500 של Exchange ישירות דרך MailAddress מחלקה. עם ה X500Address תכונה, המאפשרת לקבל את כתובת האימייל בפורמט Exchange X.500 כאשר היא זמינה. דוגמת הקוד הבאה מראה כיצד לטעון הודעת אימייל ולקבל את כתובת X.500 של השולח:
MailMessage mailMessage = MailMessage.load(fileName);
String exaddr = mailMessage.getFrom().getX500Address();
אם כתובת X.500 קיימת, היא תוחזר כמחרוזת וניתן להשתמש בה לצורך עיבוד נוסף או רישום באפליקציות שמתקשרות עם מערכות מבוססות Exchange.
חילוץ והטמעת תמונות מקושרות כקבצים מצורפים באימיילים מבוססי HTML
Aspose.Email ExtractHTMLBodyResourcesAsAttachments שיטה של HtmlSaveOption מחלקה מגדירה האם לחלץ משאבי גוף HTML כקבצים מצורפים. כך, ניתן לחלץ תוכן מקושר בתמונות מגוף ה-HTML ולהטמיעו כקובץ מצורף בהודעת MIME. התמונות המקושרות נשמרות ומשויכות כראוי לאימייל, מה שמשפר את שלמות התוכן ואת הזמינות במצב אופליין.
דוגמת הקוד הבאה מדגימה כיצד לבצע משימה זו:
MailMessage mailMessage = MailMessage.load("input.eml");
HtmlSaveOptions options = new HtmlSaveOptions();
options.setExtractHTMLBodyResourcesAsAttachments(true);
options.setResourceHtmlRenderingHandler(new ResourceHtmlRenderingHandler() {
public void invoke(final Object sender, final ResourceHtmlRenderingEventArgs e) {
System.out.println(e.getPathToResourceFile() + " " + ((Attachment)sender).getContentId());
}
});