Funzionalità di utilità - MailMessage
Crittografia e Decrittografia dei Messaggi
Aspose.Email fornisce la possibilità di crittografare e decrittografare i messaggi email. Questo argomento mostra come un messaggio esistente o nuovo può essere caricato e crittografato usando MailMessage. Il encrypt() e decrypt() i metodi restituiscono l’oggetto MailMessage per gli effetti applicati e devono essere gestiti correttamente durante la crittografia/decrittografia dei messaggi. La crittografia e la decrittografia dei messaggi comportano i seguenti passaggi:
- Crea un nuovo messaggio o caricane uno esistente
- Cripta il messaggio usando il file certificato
- Invia il messaggio o salvalo
- Decrittografa il messaggio secondo necessità
Il seguente frammento di codice mostra come crittografare e decrittografare i messaggi.
Verifica della crittografia di un messaggio
Aspose.Email MailMessage la classe consente di verificare se un messaggio è crittografato o meno. La isEncrypted proprietà di MailMessage consente di verificare ciò come mostrato nel seguente esempio di codice.
Crittografia dei messaggi con X509Certificate
Aspose.Email fornisce l’API per lavorare con messaggi crittografati con X509Certificate:
MailMessage la classe ha i seguenti metodi per lavorare con la crittografia dei messaggi:
- public MailMessage attachSignature(X509Certificate2 certificate, boolean detached) - Crea un messaggio firmato.
- public MailMessage attachSignature(X509Certificate2 certificate) - Crea un messaggio firmato.
- public X509Certificate2[] checkSignatureCert() - Verifica la firma del MailMessage esistente.
- public MailMessage decrypt(X509Certificate2 certificate)
- public MailMessage encrypt(X509Certificate2 certificate)
- public MailMessage encrypt(X509Certificate2[] certificates)
Configurare le opzioni regionali per Aspose.Email
Puoi usare LocaleOptions classe nel caso di impostazione regionale predefinita non riconosciuta e imposta l’impostazione regionale più appropriata per la libreria Aspose Email. Offre i seguenti metodi per svolgere il compito:
- getLocale() - Restituisce l’impostazione regionale predefinita per Aspose.Email.
- setLocale(Locale locale) e setLocale(String localeName) - Imposta l’impostazione regionale predefinita per Aspose.Email.
- clear() - Cancella l’impostazione regionale predefinita per Aspose.Email. Verrà usata l’impostazione regionale predefinita per Java.
Il seguente esempio di codice dimostra come caricare un messaggio email da un file usando le impostazioni regionali specificate:
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");
Questo codice garantisce che l’applicazione e la libreria Aspose.Email usino le impostazioni regionali specificate per gestire lingua, paese e convenzioni culturali.
Messaggi email contenenti allegati TNEF
Transport Neutral Encapsulation Format (TNEF) è un formato proprietario di allegati email usato da Microsoft Outlook e Microsoft Exchange Server. L’API Aspose.Email consente di leggere i messaggi email che contengono allegati TNEF e modificarne il contenuto. L’email può quindi essere salvata come email normale o nello stesso formato, preservando gli allegati TNEF. Questo articolo mostra diversi esempi di codice per lavorare con messaggi contenenti allegati TNEF.
Leggere un messaggio preservando gli allegati TNEF
Il seguente frammento di codice mostra come leggere un messaggio preservando gli allegati TNEF.
Aggiornare le risorse in un allegato TNEF e preservare il formato TNEF
Il seguente frammento di codice mostra come aggiornare le risorse in un allegato TNEF e preservare il formato TNEF.
Aggiungere nuovi allegati al messaggio principale contenente TNEF
Creare EML TNEF da MSG
I file MSG di Outlook a volte contengono informazioni come tabelle e stili di testo che possono essere alterati se convertiti in EML. Creare messaggi TNEF da tali file MSG consente di mantenere la formattazione e persino inviare tali messaggi tramite i client di posta mantenendo la formattazione.
Per creare il TNEF, è possibile utilizzare il seguente esempio di codice.
Rilevare se un messaggio è TNEF
Elaborazione dei Messaggi Rimbalzati
È molto comune che un messaggio inviato a un destinatario possa rimbalzare per qualsiasi motivo, ad esempio per un indirizzo destinatario non valido. L’API Aspose.Email ha la capacità di elaborare tale messaggio per verificare se si tratta di un’email rimbalzata o di un messaggio email normale. Il CheckBounced metodo del MailMessage la classe restituisce un risultato valido se il messaggio email è un’email di rimbalzo.
Questo articolo mostra l’uso di BounceResult classe che fornisce la capacità di verificare se un messaggio è un’email di rimbalzo. Fornisce inoltre informazioni dettagliate sui destinatari, l’azione intrapresa e il motivo della notifica.
Ignora eccezioni
La libreria offre un ExceptionManager classe per implementare la capacità di ignorare le eccezioni nella funzionalità della tua applicazione. Il frammento di codice seguente dimostra come impostare un callback per gestire le eccezioni:
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");
}
});
Oppure usa un’alternativa:
ExceptionManager.setIgnoreAll(true);
Inoltre, è possibile impostare un callback per il log delle eccezioni ignorate:
ExceptionManager.setIgnoreExceptionsLogHandler( new IgnoreExceptionsLogCallback() {
public void invoke(String message) {
System.out.println("=== EXCEPTION IGNORED === " + message);
}
});
All’utente verrà notificato che l’eccezione può essere ignorata tramite un messaggio di errore. Per esempio:
Eccezione nel messaggio:
AsposeArgumentException: properties should not be empty.
Se vuoi ignorare un’eccezione e procedere oltre, puoi utilizzare:
ExceptionManager.getIgnoreList().add("MailMessage\\Load\\DecodeTnefAttachment\\64149867-679e-4645-9af0-d46566cae598")
Invalid TNEF Attachment will be interpreted as regular attachment.
Analizzatore Spam Bayesiano
Aspose.Email offre la funzionalità di filtraggio delle email utilizzando l’analizzatore di spam Bayes. Fornisce il SpamAnalyzer classe per questo scopo. Questo articolo mostra come addestrare il filtro per distinguere tra lo spam e le email normali in base al database delle parole.
Ottenere Preambolo ed Epilogo da Messaggi EML
Nel formato MIME, il preambolo è il testo che appare dopo le intestazioni e prima del primo delimitatore multipart. L’epilogo è il testo che appare dopo l’ultimo delimitatore e prima della fine del messaggio. Questo testo di solito non è visibile agli utenti nei lettori di posta, ma alcune implementazioni MIME possono usarlo per inserire note per i destinatari che leggono il messaggio con programmi non conformi a MIME.
Il frammento di codice seguente mostra come ottenere il preambolo e l’epilogo da un messaggio EML, cosa che può essere realizzata con i metodi corrispondenti del MailMessage classe:
- setPreamble(String value) - Ottiene o imposta un testo di preambolo.
- setEpilogue(String value) - Ottiene o imposta un testo di epilogo.
// Gets or sets a preamble text.
public String getPreamble, setPreamble
// Gets or sets an epilogue text.
public String getEpilogue, setEpilogue