Aspose.Email  для Node.js через .NET

API Node.js для обработки электронной почты

Создавайте, управляйте или конвертируйте форматы электронной почты, включая MSG, EML, EMLX и MHT, из приложений Node.js.

  
 

Aspose.Email for Node.js через .NET — это гибкий, но мощный API для программирования электронной почты, который экономит время и усилия разработчиков при создании, управлении или преобразовании стандартных форматов сообщений электронной почты, не беспокоясь о сложностях реализации базового формата.

Как установить
Просто выполните npm install @aspose /email чтобы получить последнюю версию и попробовать любой из следующих фрагментов кода.

Динамическое преобразование файлов сообщений

Aspose.Email для Node.js через .NET — хороший выбор, если вы ищете API для взаимного преобразования файлов электронной почты. Он предоставляет простые в использовании интерфейсы для процесса преобразования, скрывая при этом все уродливые детали базовой спецификации формата. Все, что вам нужно сделать, это загрузить исходный файл в объектную модель Aspose.Email и вызвать метод Save с соответствующими параметрами. На самом деле все так просто!

Конвертируйте MSG в различные форматы

const ae = require('@aspose/email');

const msg= new ae.MailMessage.load("msgtemplate.msg");

// convert MSG to EML, HTML & MHTML formats
msg.save("emloutput.eml", SaveOptions.defaultEml);
msg.save("htmloutput.html", SaveOptions.defaultHtml);
msg.save("mhtoutput.mhtml", SaveOptions.defaultMhtml)
     

Расширенная поддержка формата ICS для встреч

Aspose.Email for Node.js через .NET можно использовать для создания встреч и их сохранения в формате ICS. Библиотека электронной почты Node.js также позволяет загружать встречи из файлов ICS, читать или записывать события встреч, создавать встречи в виде черновика и устанавливать статус участников встречи.

Создавайте и сохраняйте встречи

const ae = require('@aspose/email');

const attendees = new ae.MailAddressCollection();
attendees.add(new ae.MailAddress("person1@domain.com"));
attendees.add(new ae.MailAddress("person2@domain.com"));
attendees.add(new ae.MailAddress("person3@domain.com"));

// create
const app = new ae.Calendar.Appointment("Room 112",
    new Date(2006, 6, 17, 13, 0, 0),
    new Date(2006, 6, 17, 14, 0, 0),
    new ae.MailAddress("somebody@domain.com"),
    attendees);

app.summary = "Release Meetting";
app.description = "Discuss for the next release";

// save as ICS
const options = new ae.Calendar.AppointmentIcsSaveOptions(); // use default ICS options
app.save("AppointmentInICSFormat_out.ics", options);
     

Загрузите запись на прием

const ae = require('@aspose/email');

const loadedAppointment = ae.Calendar.Appointment.load("Appointment.ics");
// Display the appointment information on screen
console.log("Summary: ", loadedAppointment.summary);
console.log("Location: ", loadedAppointment.location);
console.log("Description: ", loadedAppointment.description);
console.log("Start date::", loadedAppointment.startDate);
console.log("End date:", loadedAppointment.endDate);
console.log("Organizer: ", loadedAppointment.organizer);
console.log("Attendees: ", loadedAppointment.attendees);           
     

Проводите и проводите совещания с помощью iCalendar API

Aspose.Email for Node.js через .NET предоставляет возможность создавать и сохранять элементы календаря Outlook в форматах MSG и ICS. Вы можете не только создавать и сохранять объекты iCalendar, но также извлекать, обновлять, отправлять и отменять приглашения на собрания. Кроме того, используя интуитивно понятную объектную модель, можно легко динамически создавать и использовать шаблоны повторения в формате iCalendar RFC 2445.

Создайте запрос на прием. См. подробности here

const ae = require('@aspose/email');

const appWhere = "location";
const appWhen = new Date(2023, 8, 17, 13, 0, 0);
const sender = new ae.MailAddress("from@domain.com");
const recipient = new ae.MailAddress("to@domain.com");
const attendees = new ae.MailAddressCollection();
attendees.add(recipient);

const app = new ae.Calendar.Appointment(appWhere, appWhen, appWhen, sender, attendees);

const message = new ae.MailMessage(sender, recipient);
message.addAlternateView(app.requestApointment());
const msg = ae.Mapi.MapiMessage.fromMailMessage(message);

// Save the appointment.
msg.save("appointment.msg");           
     

Создание или управление файлами PST, OST и MBOX

Aspose.Email для Node.js через .NET позволяет управлять файлами хранилища Outlook, такими как PST и OST. Вы можете выполнять ряд операций с существующими файлами хранилища, а также создавать новые файлы PST с нуля. Возможные операции включают список папок, список сообщений, извлечение сообщений и контакты в формате MSG.

Прочитайте PST


const ae = require('@aspose/email');

const pst = ae.Storage.Pst.PersonalStorage.fromFile("outlook.pst");
const rootFolders = pst.rootFolder.getSubFolders();

for( folder of rootFolders) {
    console.log("Folder: ", folder.displayName);
    console.log("Total Items: ", folder.contentCount);
    console.log("Total Unread Items: ", folder.contentUnreadCount);
    console.log("----------------------");
    for(msg of folder.enumerateMessages()) {
        console.log("  ", msg.subject);
    }
}
     

Наряду с файлами хранилища Outlook, Aspose.Email для Node.js через .NET также поддерживает формат файлов Mbox. Вы можете использовать Aspose.Email для Node.js через .NET для загрузки существующих файлов Mbox и извлечения информации о сообщениях.

Извлечение сообщений из Mbox

var ae = require('@aspose/email');

const options = new ae.Storage.Mbox.MboxLoadOptions(); // using default options
const reader = new ae.Storage.Mbox.MboxrdStorageReader("Inbox.mbox", options);
let index = 0;
//  Read all messages in a loop
for(eml of reader.enumerateMessages() ) {
    console.log("Subject: ", eml.subject);

    // save message in EML & MSG format
    eml.save(`${index}_output.eml`, ae.SaveOptions.defaultEml);
    eml.save(`${index}_output.msg`, ae.SaveOptions.defaultMsgUnicode);
    ++index;
}
      
  
  

Aspose.Email предлагает отдельные API электронной почты для других популярных сред разработки, перечисленных ниже: