Das Erstellen einer EML Datei programmgesteuert ist unerlässlich, wenn Sie E‑Mails archivieren, mit Altsystemen integrieren oder Benachrichtigungen automatisieren müssen. Aspose.3D Cloud SDK for Node.js bietet eine unkomplizierte Bibliothek, die die schwere Arbeit übernimmt, sodass Sie sich auf die Geschäftslogik konzentrieren können. In diesem Tutorial lernen Sie, wie Sie EML in Node.js erstellen, sehen ein vollständiges funktionierendes Beispiel, erkunden äquivalente cURL‑Befehle und entdecken bewährte Methoden für einen zuverlässigen E‑Mail‑Export.

Wie man EML in Node.js erstellt - Schritt für Schritt

  1. Installieren Sie das SDK und konfigurieren Sie die API‑Schlüssel: Verwenden Sie npm, um das Paket hinzuzufügen und ein Configuration‑Objekt mit Ihren Client‑Anmeldeinformationen zu erstellen.
const { Configuration } = require('@asposecloud/email');

const config = new Configuration({
       clientId: 'YOUR_CLIENT_ID',
       clientSecret: 'YOUR_CLIENT_SECRET'
   });
  1. Initialisieren Sie den EmailApi-Client: Übergeben Sie die Konfiguration an den EmailApi-Konstruktor.
const { EmailApi } = require('@asposecloud/email');
const emailApi = new EmailApi(config);

Für weitere Details siehe die EmailApi-Referenz.

  1. Erstelle ein EmailDto mit Absender, Empfänger, Betreff, Text und Anhang: Das DTO enthält alle E‑Mail‑Komponenten.
const { EmailDto, MailAddress } = require('@asposecloud/email');

const email = new EmailDto({
       from: new MailAddress({ address: 'sender@example.com', displayName: 'Sender Name' }),
       to: [new MailAddress({ address: 'recipient@example.com', displayName: 'Recipient Name' })],
       subject: 'Test Email generated via Aspose.Email Cloud SDK',
       body: 'Hello,\n\nThis is a test email created with Aspose.Email Cloud SDK for Node.js.\n\nBest regards,\nNode.js',
       isBodyHtml: false,
       attachments: [{
           name: 'sample.txt',
           content: Buffer.from('Sample attachment content').toString('base64')
       }]
   });
  1. EML-Datei generieren: Rufen Sie create mit dem Format 'Eml' auf. Die Methode gibt einen Binärpuffer zurück.
const emlBuffer = await emailApi.create(email, 'Eml');
  1. Den Puffer auf die Festplatte schreiben: Verwenden Sie das fs‑Modul von Node, um die Datei zu speichern.
const fs = require('fs');
const path = require('path');

const outputFile = path.resolve(__dirname, 'output.eml');
   fs.writeFileSync(outputFile, emlBuffer);
   console.log(`EML file successfully created at: ${outputFile}`);

Vollständiges Codebeispiel: EML-Datei mit Node.js erstellen

Der folgende Code demonstriert den gesamten Workflow von der Konfiguration bis zur Dateierstellung.

const fs = require('fs');
const path = require('path');
const {
    EmailApi,
    EmailDto,
    MailAddress,
    Configuration
} = require('@asposecloud/email');

// -----------------------------------------------------
// 1. Install the SDK and configure API keys
// -----------------------------------------------------
const clientId = 'YOUR_CLIENT_ID';
const clientSecret = 'YOUR_CLIENT_SECRET';

const config = new Configuration({
    clientId: clientId,
    clientSecret: clientSecret,
    // baseUrl is optional; default is https://api.aspose.cloud
});

const emailApi = new EmailApi(config);

// -----------------------------------------------------
// 2. Initialize Email object and set properties
// -----------------------------------------------------
const email = new EmailDto({
    from: new MailAddress({
        address: 'sender@example.com',
        displayName: 'Sender Name'
    }),
    to: [
        new MailAddress({
            address: 'recipient@example.com',
            displayName: 'Recipient Name'
        })
    ],
    subject: 'Test Email generated via Aspose.Email Cloud SDK',
    body: 'Hello,\n\nThis is a test email created with Aspose.Email Cloud SDK for Node.js.\n\nBest regards,\nNode.js',
    isBodyHtml: false,
    // Optional: add a simple text attachment
    attachments: [
        {
            name: 'sample.txt',
            // Content must be Base64‑encoded
            content: Buffer.from('Sample attachment content').toString('base64')
        }
    ]
});

// -----------------------------------------------------
// 3. Generate EML file with Node.js
// -----------------------------------------------------
(async () => {
    try {
        // 'Eml' tells the service to return the message in .eml format
        const emlBuffer = await emailApi.create(email, 'Eml');

// Write the binary buffer to a file
        const outputFile = path.resolve(__dirname, 'output.eml');
        fs.writeFileSync(outputFile, emlBuffer);
        console.log(`EML file successfully created at: ${outputFile}`);
    } catch (error) {
        console.error('Failed to create EML:', error);
    }
})();

Hinweis: Dieses Codebeispiel demonstriert die Kernfunktionalität. Bevor Sie es in Ihrem Projekt verwenden, stellen Sie sicher, dass Sie alle Dateipfade und Konfigurationswerte an Ihre tatsächliche Umgebung anpassen, überprüfen Sie, dass alle erforderlichen Abhängigkeiten ordnungsgemäß installiert sind, und testen Sie gründlich in Ihrer Entwicklungsumgebung. Wenn Sie auf Probleme stoßen, lesen Sie bitte die offizielle Dokumentation oder wenden Sie sich an das Support-Team für Unterstützung.

EML über REST-API mit cURL generieren

Nachfolgend finden Sie die cURL‑Befehle, die dieselbe Operation über die REST‑API ausführen.

  1. Ein Zugriffstoken erhalten
curl -X POST "https://api.aspose.cloud/connect/token" \
        -H "Content-Type: application/x-www-form-urlencoded" \
        -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"
  1. Erstellen Sie das E‑Mail‑JSON Payload (speichern Sie es als email.json)
{
  "from": { "address": "sender@example.com", "displayName": "Sender Name" },
  "to": [{ "address": "recipient@example.com", "displayName": "Recipient Name" }],
  "subject": "Test Email generated via Aspose.Email Cloud SDK",
  "body": "Hello,\n\nThis is a test email created with Aspose.Email Cloud SDK for Node.js.\n\nBest regards,\nNode.js",
  "isBodyHtml": false,
  "attachments": [
    {
      "name": "sample.txt",
      "content": "U2FtcGxlIGF0dGFjaG1lbnQgY29udGVudA=="
    }
  ]
}
  1. Anforderung der EML-Generierung
curl -X POST "https://api.aspose.cloud/email/create?format=Eml" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d @email.json --output output.eml

Diese Befehle ermöglichen es Ihnen, eine EML‑Datei zu erzeugen, ohne Node.js‑Code zu schreiben. Weitere Details finden Sie in der offiziellen API‑Dokumentation.

Voraussetzungen und Einrichtung für Aspose.3D Cloud SDK

Um das SDK zu verwenden, benötigen Sie Node.js (v12 oder höher) und ein Aspose Cloud-Konto.

npm install aspose3dcloud

Sie können das Paket auch direkt von der Release‑Seite herunterladen. Nach der Installation erstellen Sie ein kostenloses Aspose Cloud‑Konto, erhalten Sie Ihre clientId und clientSecret und bewahren Sie diese sicher auf.

Feinabstimmung der E-Mail-Generierungsoptionen

Das SDK stellt mehrere Eigenschaften bereit, die Sie anpassen können:

  • isBodyHtml – Setzen Sie es auf true, wenn Ihr E‑Mail‑Body HTML‑Markup enthält.
  • attachments – Fügen Sie mehrere Objekte zum attachments‑Array hinzu; jedes muss einen name und Base64‑kodierten content enthalten.
  • customHeaders – Obwohl im Beispiel nicht gezeigt, können Sie eine customHeaders‑Map hinzufügen, um zusätzliche MIME‑Header einzuschließen.

Siehe die EmailDto‑Klassenreferenz für eine vollständige Liste konfigurierbarer Felder.

Best Practices für die EML-Generierung

  • E-Mail-Adressen validieren bevor sie an die API gesendet werden, um Laufzeitfehler zu vermeiden.
  • Base64‑kodieren Sie den Anhangsinhalt um sicherzustellen, dass Binärdaten korrekt übertragen werden.
  • Configuration-Objekt wiederverwenden bei mehreren API-Aufrufen, um den Aufwand zu reduzieren.
  • Fehler elegant behandeln indem Sie den Aufruf create in einen try/catch-Block einbetten und die Antwort protokollieren.
  • Generierte EML-Dateien sicher speichern, insbesondere wenn sie sensible Informationen enthalten.

Fazit

Das Erstellen von EML in Node.js wird mit dem Aspose.3D Cloud SDK for Node.js zu einem einfachen, wiederholbaren Prozess. Wenn Sie den oben beschriebenen Schritten, Codebeispielen und bewährten Methoden folgen, können Sie E‑Mails zuverlässig in das EML‑Format exportieren, um sie zu archivieren, für Compliance‑Zwecke oder für die Weiterverarbeitung zu nutzen. Denken Sie daran, Ihre API‑Anmeldeinformationen zu sichern und für den Produktionseinsatz eine passende Lizenz zu erhalten; Sie können Preisoptionen prüfen oder eine temporäre Lizenz auf der temporäre Lizenzseite anfordern. Viel Spaß beim Programmieren!

FAQs

Wie erstelle ich eine EML-Datei in Node.js mit dem Aspose.3D Cloud SDK?
Verwenden Sie die EmailApi‑Klasse, um ein EmailDto zu erstellen, und rufen Sie dann create mit dem Format 'Eml' auf. Das vollständige Beispiel in diesem Artikel zeigt den genauen Code.

Welche Optionen kann ich beim Erstellen einer EML-Datei anpassen?
Sie können isBodyHtml umschalten, mehrere Anhänge hinzufügen und benutzerdefinierte MIME-Header definieren. Siehe den Abschnitt Konfiguration / Optionen für Details.

Ist für die Produktion eine Lizenz erforderlich?
Eine gültige Lizenz ist für Produktionsbereitstellungen erforderlich. Holen Sie sich eine temporäre Lizenz von der temporären Lizenzseite oder erwerben Sie eine Voll‑Lizenz über den Aspose Store.

Mehr sehen