E-Mail-Versand mit Aspose.Email Cloud in der Heroku Node.js-App

Ein Tutorial zum Einrichten einer heroku node.js-App und zum Verwenden von Aspose.Email Cloud für das Senden von E-Mails in der Node.js-Anwendung.

In diesem Blog erfahren Sie, wie Sie eine Node.js-App auf Heroku bereitstellen. Und der Artikel hilft Ihnen, Aspose.Email Cloud zu verstehen und wie Sie es für den E-Mail-Versand verwenden. Der Artikel geht davon aus, dass Sie bereits ein kostenloses Heroku-Konto eingerichtet und Node.js und NPM lokal installiert haben. Lass uns anfangen!

Richten Sie Heroku ein

Um loszulegen, müssen Sie zuerst das Heroku Command Line Interface (CLI) installieren. Heroku CLI wird verwendet, um verschiedene Skalierbarkeitsaufgaben zu verwalten und auszuführen. Sie können damit Add-Ons bereitstellen, Ihre Anwendungsprotokolle anzeigen und Ihre Anwendung lokal ausführen. Wenn Sie macOS verwenden, können Sie es mit Homebrew installieren oder das offizielle Heroku besuchen.

brew install heroku/brew/heroku

Sobald die Installation abgeschlossen ist, können Sie den folgenden Befehl ausführen, um Heroku für die lokale Verwendung zu authentifizieren.

heroku login
heroku: Press any key to open up the browser to login or q to exit
 ›   Warning: If browser does not open, visit
 ›   https://cli-auth.heroku.com/auth/browser/\*\*\*
heroku: Waiting for login...
Logging in... done
Logged in as me@example.com

Dieser Befehl öffnet Ihren Browser zur Authentifizierung auf der Anmeldeseite von Heroku. Dies ist erforderlich, damit sowohl Heroku- als auch Git-Befehle ordnungsgemäß funktionieren

Richten Sie Aspose.Email Cloud ein

Aspose.Email Cloud ist ein Cloud-SDK zum Senden, Empfangen, Anhängen, Markieren und Konvertieren von Cloud-E-Mails und zur Unterstützung beim Erstellen einer Ordnerstruktur für die E-Mail-Archivierung in der Cloud. Dies ist eine einfach zu bedienende und schnelle API, die keine zusätzliche Software installieren muss. Die API unterstützt viele Programmiersprachen wie C#, Java, PHP, Python, Ruby & Typescript. Um zu erfahren, wie man das SDK installiert, befolgen Sie bitte die Anweisungen in offizieller Anleitung.

E-Mail-Versand mit Aspose.Email Cloud

Angenommen, Sie haben Node.js bereits installiert, erstellen Sie bitte ein Verzeichnis für Ihre Anwendung.

$ mkdir my-email-sending-app
$ cd my-email-sending-app
$ npm init
$ npm install express --save
$ npm install @asposecloud/aspose-email-cloud

Fügen Sie nun den folgenden Code in Ihre main.js-Datei ein

$ mkdir my-email-sending-app
$ cd my-email-sending-app
$ npm init
$ npm install express --save
$ npm install @asposecloud/aspose-email-cloud

add following code in your main.js file

//  Importieren Sie das SDK
const email = require('@asposecloud/aspose-email-cloud');
const express = require('express')
const app = express()
const port = 5000

// App-Anmeldeinformationen einrichten 
const AsposeApp = {
    ClientId: '\*\*\*\*\*',
    ClientSecret: '\*\*\*\*\*',
}

// Richten Sie das SDK ein
const api = new email.EmailCloud(AsposeApp.ClientId, AsposeApp.ClientSecret)

const credentials = new email.EmailClientAccountPasswordCredentials(
    'my@email.com', '\*\*\*\*\*');
const receiveAccountDto = new email.EmailClientAccount(
    'smtp.email.com', 465, 'SSLAuto', 'SMTP', credentials);

// Richten Sie ein E-Mail-Konto für den E-Mail-Versand ein
const smtpAccount = 'smtp.account';
const storageName = 'MyEmailStorage';
const accountFolder = 'MyEmailFolder';
const smtpLocation = new email.StorageFileLocation(
    storageName, accountFolder, smtpAccount);


app.get('/', async (req, res) => {
  res.send('Welcome to my email sending app in Node.js')
})

app.get('/setup-account', async (req, res) => {
    await api.client.account.save(new email.ClientAccountSaveRequest(smtpLocation, receiveAccountDto));
    res.send('Account setup successfully');
})

app.get('/send-email', async (req, res) => {
    // E-Mail über das E-Mail-Konto senden
    const emaildto = new email.EmailDto();
    emaildto.from = new email.MailAddress('From address', 'example@gmail.com');
    emaildto.to = [new email.MailAddress('To address', 'to@aspose.com')];
    emaildto.subject = 'Some subject';
    emaildto.body = 'Some body';
    await api.client.message.send(
        new email.ClientMessageSendRequest(
            smtpLocation, new MailMessageDto(emaildto)));
    
    res.send('Email Sent Successfully');

});

app.listen(port, () => {
  console.log(\`Example app listening on port ${port}\`)
})

Stellen Sie die Node.js-App in Heroku bereit

Wenn Sie mit all Ihren Änderungen fertig sind und bereit sind, Ihre App zu veröffentlichen, können Sie die folgenden Befehle verwenden, um Ihre Änderungen per Push an Heroku zu übertragen.

$ heroku create
Creating sharp-rain-871... done, stack is heroku-18
http://sharp-rain-871.herokuapp.com/ | https://git.heroku.com/sharp-rain-871.git
Git remote heroku added

Dadurch wird ein Git-Repository auf Heroku erstellt, und alles, was Sie in dieses Repo verschieben, wird in Ihrer Heroku-Anwendung bereitgestellt.

$ git push heroku main

Jetzt können Sie Ihre Anwendung mit dem Befehl heroku open öffnen.

Fazit

In diesem Artikel haben wir etwas über die Heroku-Plattform und das Senden von E-Mails mit der Node.js-Anwendung auf Heroku erfahren. Wir haben auch die Aspose.Email Cloud erkundet und früher einen SMTP-E-Mail-Client eingerichtet, um E-Mails online zu versenden. Aspose.Email Cloud dient nicht nur zum Versenden von E-Mails. Stattdessen handelt es sich um ein Cloud-SDK zum Senden, Empfangen, Anhängen, Markieren und Konvertieren von Cloud-E-Mails und zum Erstellen einer Ordnerstruktur für die E-Mail-Archivierung in der Cloud. Dies ist eine einfach zu bedienende und schnelle API, die keine zusätzliche Software installieren muss. Die API unterstützt viele Programmiersprachen wie C#, Java, PHP, Python, Ruby & Typescript. Ich hoffe, dieser Artikel hat Ihnen geholfen.

Wir empfehlen dringend, die Möglichkeiten von Aspose.Email for Cloud über die Produktdokumentation zu erkunden. Wenn Sie bei der Verwendung der API auf Probleme stoßen, wenden Sie sich bitte über das [kostenlose Produkt-Support-Forum] (https://forum.aspose.cloud/c/email/9) an uns.

Erkunden