Ирсоли почтаи электронӣ бо истифода аз Aspose.Email Cloud дар Heroku Node.js App

Дарс дар бораи чӣ гуна насб кардани барномаи heroku node.js ва чӣ гуна истифода бурдани Aspose.Email Cloud барои ирсоли почтаи электронӣ дар замимаи Node.js.

Ин блог ба шумо дар бораи ҷойгиркунии барномаи Node.js дар Heroku роҳнамоӣ мекунад. Ва ин мақола ба шумо дар фаҳмидани Aspose.Email Cloud ва чӣ гуна истифода бурдани онро барои фиристодани почтаи электронӣ кӯмак мекунад. Мақола тахмин мекунад, ки шумо аллакай як насби ройгони ҳисоби Heroku доред ва Node.js ва NPM ба таври маҳаллӣ насб карда шудааст. Биёед оғоз кунем!

Ҳерокуро насб кунед

Барои оғоз кардан, шумо аввал бояд интерфейси сатри фармони 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 як SDK абрӣ барои фиристодан, қабул кардан, замима кардан, парчам кардан ва табдил додани паёмҳои абрӣ ва дастгирӣ барои сохтани сохтори ҷузвдон барои бойгонии почтаи электронӣ дар абр мебошад. Ин API барои истифода осон ва зуд аст, ки ба насб кардани нармафзори иловагӣ ниёз надорад. API бисёр забонҳои барномасозиро дастгирӣ мекунад, аз қабили C#, Java, PHP, Python, Ruby & Typescript. Барои донистани тарзи насб кардани SDK лутфан дастурҳоро дар дастури расмӣ иҷро кунед.

Ирсоли почтаи электронӣ бо истифода аз Aspose.Email Cloud

Фарз мекунем, ки шумо Node.js-ро аллакай насб кардаед, лутфан барои замимаи худ директория эҷод кунед.

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

Акнун рамзи зеринро дар файли main.js худ илова кунед

$ 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

//  SDK-ро ворид кунед
const email = require('@asposecloud/aspose-email-cloud');
const express = require('express')
const app = express()
const port = 5000

// Маълумотномаҳои барномаро насб кунед 
const AsposeApp = {
    ClientId: '\*\*\*\*\*',
    ClientSecret: '\*\*\*\*\*',
}

// SDK-ро насб кунед
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);

// Барои фиристодани почтаи электронӣ ҳисоби почтаи электронӣ насб кунед
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) => {
    // Бо истифода аз ҳисоби почтаи электронӣ почтаи электронӣ фиристед
    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}\`)
})

Барномаи Node.js -ро дар Heroku ҷойгир кунед

Пас аз он ки шумо тамоми тағиротҳои худро анҷом додед ва барои нашри барномаатон омодаед, шумо метавонед фармонҳои зеринро истифода баред, то тағиротҳои худро ба Heroku тела диҳед.

$ 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

ин дар Ҳероку анбори git эҷод мекунад ва ҳар чизе ки шумо ба ин репо тела медиҳед, дар замимаи Heroku-и шумо ҷойгир карда мешавад.

$ git push heroku main

Акнун шумо метавонед барномаи худро бо истифода аз фармони heroku open кушоед.

Хулоса

Дар ин мақола, мо дар бораи платформаи Heroku ва фиристодани почтаи электронӣ бо истифода аз барномаи Node.js дар Heroku фаҳмидем. Мо инчунин Aspose.Email Cloud-ро таҳқиқ кардем ва барои таъсиси муштарии почтаи электронии SMTP барои ирсоли почтаи электронӣ истифода мешудем. Aspose.Email Cloud танҳо барои фиристодани паёмҳои электронӣ нест. Ба ҷои ин, он як Cloud SDK барои фиристодан, қабул кардан, замима кардан, парчам кардан ва табдил додани мактубҳои абрӣ ва дастгирӣ барои сохтани сохтори ҷузвдон барои бойгонии почтаи электронӣ дар абр аст. Ин истифода осон ва зуд аст, ки ба насб кардани нармафзори иловагӣ ниёз надорад. API бисёр забонҳои барномасозиро дастгирӣ мекунад, аз қабили C#, Java, PHP, Python, Ruby & Typescript. Ман умедворам, ки ин мақола ба шумо кӯмак кард.

Мо тавсия медиҳем, ки имкониятҳои Aspose.Email for Cloud тавассути Documentation Product омӯзед. Ғайр аз он, агар шумо ҳангоми истифодаи API бо ягон мушкилот рӯ ба рӯ шавед, лутфан тавассути [Форуми дастгирии маҳсулоти ройгон] (https://forum.aspose.cloud/c/email/9) тамос гиред.

Кашф кунед