Отправка электронной почты с помощью Aspose.Email Cloud в приложении Heroku Python

Heroku — это платформа как услуга (PaaS).Эта статья поможет вам настроить приложение Heroku Python и использовать Aspose.Email Cloud для отправки электронной почты.

Heroku — это платформа как услуга (PaaS), которая позволяет разработчикам создавать, запускать и управлять приложениями полностью в облаке. Она поддерживает несколько языков программирования. Этот блог расскажет вам, как выполнить развертывание в Heroku (приложение Python).Статья поможет вам понять Aspose.Email Cloud и как использовать его для отправки электронной почты с помощью приложения Heroku Python. В статье предполагается, что у вас уже есть настроенная бесплатная учетная запись Heroku и локально установленные Python и pip. Давайте начнем!

Настройка Heroku

Для начала вам нужно установить Heroku Command Line Interface (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 — это облачный SDK для отправки, получения, добавления, маркировки и преобразования облачных писем, а также поддержка создания структуры папок для архивации писем в облаке. Это простой в использовании и быстрый API, не требующий установки дополнительного программного обеспечения. API поддерживает множество языков программирования, таких как C#, Java, PHP, Python, Ruby и Typescript. Чтобы настроить Aspose.Email Cloud, следуйте инструкциям ниже.

Войдите в Aspose.Cloud Dashboard и щелкните вкладку Applications в левой боковой панели. Теперь прокрутите вниз, щелкните кнопку Create New Application, как показано на изображении ниже.

Настройка учетной записи Aspose.Email Cloud для отправки электронной почты

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

Настройка учетной записи Aspose.Email Cloud для отправки электронной почты

Теперь прокрутите страницу вниз до раздела «Учетные данные клиента», чтобы скопировать идентификатор клиента и секретный код клиента, как показано на рисунке ниже.

Настройка учетной записи Aspose.Email Cloud для отправки электронной почты

Отправка электронной почты с помощью Aspose.Email Cloud

Предположим, что вы уже установили Python и Pip. Теперь у вас есть работающий репозиторий git, содержащий простое приложение, файл runtime.txt, определяющий, какая версия Python будет использоваться, и файл requirements.txt, который используется менеджером зависимостей Python, Pip.

$ mkdir my-email-sending-app
$ cd my-email-sending-app
$ pip install aspose-email-cloud

добавьте следующий код в ваш файл Python

from AsposeEmailCloudSdk import api #EmailApi class is here
from AsposeEmailCloudSdk import models #REST API models are here

// Setup App Credentials 
client_secret = 'Your Client secret'
client_id = 'Your Client id'

email_cloud = api.EmailCloud(client_secret, client_id)

credentials = models.EmailClientAccountPasswordCredentials(
    'example@gmail.com', 'password')

// Setup an email account for email sending
send_account_dto = models.EmailClientAccount(
    'smtp.gmail.com', 465, 'SSLAuto', 'SMTP', credentials)
smtp_account = 'smtp.account'
smtp_location = models.StorageFileLocation(
    storage_name, account_folder, smtp_account)

api.client.account.save(
    models.ClientAccountSaveRequest(
        smtp_location, send_account_dto))

email_document = models.EmailDto(
    _from=models.MailAddress('From Name', 'example@gmail.com'),
    to=[models.MailAddress('To Name', 'to@aspose.com')],
    subject='Some subject',
    body='Some body')

api.client.message.send(
    models.ClientMessageSendRequest(
        smtp_location, models.MailMessageDto(email_document)))

Развертывание в Heroku (приложение Python)

После того, как вы закончите вносить все изменения и будете готовы к развертыванию в Heroku (приложение Python), вы можете использовать следующие команды для отправки своих изменений в Heroku.

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

это создаст репозиторий git на Heroku, и все, что вы отправите в этот репозиторий, будет развернуто на Heroku (приложение Python).

$ git push heroku main

Теперь вы можете открыть свое приложение с помощью команды heroku open.

Заключение

В этой статье мы узнали о платформе Heroku как услуге (PaaS) и о том, как она позволяет разработчикам создавать, запускать и управлять приложениями полностью в облаке. Мы также узнали, как настроить приложение Heroku Python. Мы также изучили Aspose.Email Cloud и использовали его для настройки почтового клиента SMTP для отправки электронной почты. Aspose.Email Cloud предназначен не только для отправки электронной почты. Вместо этого это облачный SDK для отправки, получения, добавления, пометки и преобразования облачных писем и поддержки создания структуры папок для архивации электронной почты в облаке. Это простой в использовании и быстрый API, который не требует установки дополнительного программного обеспечения. API поддерживает множество языков программирования, таких как C#, Java, PHP, Python, Ruby и Typescript. Надеюсь, эта статья помогла вам.

Исследовать