Надсилання електронної пошти за допомогою Aspose.Email Cloud у програмі Heroku Java

Ця стаття допоможе вам налаштувати програму Java на платформі Heroku. Тут пояснюється, як використовувати Aspose.Email Cloud для надсилання електронної пошти за допомогою програми Java у хмарі.

Heroku — це платформа як послуга (PaaS), яка дозволяє розробникам створювати, запускати та керувати програмами повністю в хмарі. Він підтримує кілька мов програмування, включаючи Java. Heroku спрощує розгортання та масштабування програм Java. Незалежно від того, чи використовуєте ви стандартні бібліотеки із серверами додатків, як-от Tomcat чи Jetty, чи фреймворками, як-от Spring чи Play, Heroku допоможе вам створювати речі на свій смак за допомогою інструментів, які вам подобаються. Цей блог допоможе вам розгорнути програму Java на Heroku. Стаття допоможе вам зрозуміти Aspose.Email Cloud і як використовувати його для надсилання електронної пошти за допомогою Heroku Java App. У статті припускається, що у вас уже є безкоштовне налаштування облікового запису Heroku і локально встановлені Java 8 і Maven 3. Maven — це потужний інструмент керування проектами, який базується на POM (об’єктна модель проекту) переважно для проектів Java. Maven також можна використовувати для створення та керування проектами, написаними на C#, Ruby, Scala та іншими мовами. Він використовується для побудови проекту, залежностей і документації. Це спрощує процес збирання, як ANT. Але він занадто просунутий, ніж ANT. Коротше кажучи, ми можемо сказати, що maven — це інструмент, який можна використовувати для створення та керування будь-яким проектом на основі Java. maven полегшує повсякденну роботу Java-розробників і загалом допомагає з розумінням будь-якого проекту на основі Java. Почнемо!

Встановити Heroku

Щоб розпочати, спочатку потрібно встановити інтерфейс командного рядка Heroku (CLI).Heroku CLI використовується для управління та виконання різноманітних завдань масштабованості. Ви можете використовувати це для створення додатків, перегляду журналів програми та запуску програми локально. Якщо ви використовуєте macOS, ви можете використовувати Homebrew для її встановлення або відвідати офіційний Heroku.

brew install heroku/brew/heroku

Після завершення інсталяції ви можете запустити наступну команду для автентифікації Heroku для локального використання.

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

Ця команда відкриває у вашому браузері сторінку входу Heroku для автентифікації. Це потрібно для належної роботи команд Heroku і git

Налаштуйте Aspose.Email Cloud

Aspose.Email Cloud — це Cloud SDK для надсилання, отримання, додавання, позначення та конвертації хмарних електронних листів і підтримки для створення структури папок для архівування електронної пошти в хмарі. Це простий у використанні та швидкий API, для якого не потрібно встановлювати додаткове програмне забезпечення. API підтримує багато мов програмування, наприклад C#, Java, PHP, Python, Ruby та Typescript. Щоб налаштувати Aspose.Email Cloud, виконайте наведені нижче інструкції.

Увійдіть на інформаційну панель Aspose.Cloud і натисніть вкладку «Програми» на лівій бічній панелі. Тепер прокрутіть вниз і натисніть кнопку «Створити нову програму», як показано на зображенні нижче.

Обліковий запис Aspose.Email Cloud Setup для надсилання електронної пошти

Тепер створіть нову програму, вибравши сховище за умовчанням, як показано на зображенні нижче. Ви також можете налаштувати стороннє сховище для завантаження файлів даних, дотримуючись посібника як налаштувати стороннє хмарне сховище.

Обліковий запис Aspose.Email Cloud Setup для надсилання електронної пошти

Тепер прокрутіть вниз до розділу «Облікові дані клієнта», щоб скопіювати ідентифікатор клієнта та секрет клієнта, як показано на зображенні нижче.

Обліковий запис Aspose.Email Cloud Setup для надсилання електронної пошти

Надсилання електронної пошти за допомогою Aspose.Email Cloud

Припустимо, що ви вже встановили Java 8 і Maven 3. Тепер у вас є функціонуюче сховище git, яке містить просту програму. Це функціонуюче сховище Git має містити просту програму Java. Програма містить Procfile, спеціальний файл відкритого тексту, який використовується програмами Heroku. У цьому файлі ви явно оголошуєте процеси та команди, які використовуються для запуску програми.

Procfile у прикладі вихідного коду програми виглядає так:

web: java -jar target/java-getting-started-1.0.jar

Цей файл оголошує один тип процесу, web, і команду, необхідну для його запуску. Веб-назва важлива. Він заявляє, що цей тип процесу підключається до стеку маршрутизації HTTP Heroku та може отримувати веб-трафік. Профілі можуть містити додаткові типи процесів. Наприклад, ви можете оголосити фонового працівника, який обробляє елементи поза чергою. Приклад програми також має містити файл pom.xml, який використовується менеджером залежностей Java, Maven. Heroku автоматично визначає програму як програму Java, якщо вона містить файл pom.xml у кореневому каталозі.

Інший файл, system.properties, вказує версію Java для використання. Вміст цього додаткового файлу виглядає так:

java.runtime.version=1.8

Спочатку додайте репозиторій у свій проект

<repository>
    <id>aspose-cloud</id>
    <name>Aspose.Cloud repository</name>
    <url>https://repository.aspose.cloud/repo</url>
</repository>

а потім додайте залежність

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email-cloud</artifactId>
</dependency>

додайте наступний код у свій проект для надсилання електронною поштою

import com.aspose.email.cloud.sdk.invoker.ApiException;
import com.aspose.email.cloud.sdk.model.\*;
import com.aspose.email.cloud.sdk.api.\*;

EmailCloud api = new EmailCloud("Your Client secret", "Your Client id");

EmailClientAccountPasswordCredentials credentials =
    new EmailClientAccountPasswordCredentials(
        "example@gmail.com", "password");

// Setup an email account for email sending
EmailClientAccount sendAccountDto = new EmailClientAccount(
    "smtp.gmail.com", 465, "SSLAuto", "SMTP", credentials);
String smtpAccount = "smtp.account";
String smtpLocation = new StorageFileLocation(
    storageName, accountFolder, smtpAccount);
api.client().account().save(new ClientAccountSaveRequest(
    smtpLocation, sendAccountDto));

EmailDto email = new EmailDto()
    .from(new MailAddress().address("example@gmail.com"))
    .addToItem(new MailAddress().address("to@aspose.com"))
    .subject("Some subject")
    .body("Some body");

api.client().message().send(
    new ClientMessageSendRequest(
        smtpLocation, new MailMessageDto(email)));

Розгорнути в Heroku (програма Java)

Коли ви внесете всі зміни та будете готові до розгортання в Heroku (програма Java), ви можете використовувати наступні команди, щоб перенести свої зміни в Heroku.

$ heroku create
Creating sharp-rain-321... done, stack is heroku-20
https://sharp-rain-221.herokuapp.com/ | https://git.heroku.com/sharp-rain-321.git
Git remote heroku added

це створить репозиторій git на Heroku, і все, що ви надішлете в це сховище, буде розгорнуто в Heroku Java App.

$ git push heroku main

Тепер ви можете відкрити свою програму за допомогою команди heroku open.

Висновок

Ця стаття є частиною серії, яка пояснює платформу Heroku і те, як вона дозволяє розробникам створювати, запускати та працювати з програмами повністю в хмарі. Ми також дізналися, як налаштувати Java-додаток Heroku. Ми також досліджували хмару Aspose.Email і налаштували поштовий клієнт SMTP для надсилання електронної пошти. Aspose.Email Cloud призначений не лише для надсилання електронних листів. Натомість це Cloud SDK для надсилання, отримання, додавання, позначення та конвертації хмарних електронних листів і підтримки для створення структури папок для архівування електронної пошти в хмарі. Це простий у використанні та швидкий API, для якого не потрібно встановлювати додаткове програмне забезпечення. API підтримує багато мов програмування, наприклад C#, Java, PHP, Python, Ruby та Typescript. Сподіваюся, ця стаття допомогла вам.

Досліджуйте