የ Yandex ተግባራት ደብዳቤ ይልካሉ

የ Yandex ተግባራት ደብዳቤ ይልካሉ

ዛሬ የሚባሉትን እንፈጥራለን. የ Yandex ተግባር (ኦፊሴላዊ ስም የ Yandex ክላውድ ተግባራት) ከደብዳቤ አገልግሎቱ ጋር የተስማማ SendGrid በሰላም ለተኙ ተጠቃሚዎች “ሳሙና” ይልካል (ማሾፍ ብቻ - ሁላችንም አይፈለጌ መልእክት እንደምንቃወም አውቃለሁ)።

እኔ ደግሞ የባህላዊ አገልጋዮች ተቃዋሚ (ነገር ግን ያለ አክራሪነት) እና የሚባሉት ደጋፊ ነኝ። አገልጋይ ያልያዘ (አገልጋይ-አልባ) መፍትሄዎች, ምክንያቱም እኔ አልወድም (እና በትክክል እንዴት እንደምሰራ አላውቅም) አገልጋዮችን ማስተዳደር, እና እንዲያውም የበለጠ, ያልተጫኑበትን ጊዜ ይክፈሉ. ሌላው ነገር ተግባራት ነው. አንድ ሰው ያለ እኔ አገለግሏቸዋል፣ እና እኔ ለጥሪዎች ብቻ ነው የምከፍለው። በጥቅምት 2019 መጀመሪያ ላይ Yandex አቅርቧል የ Yandex ክላውድ ተግባራት - በሩሲያ ፌዴሬሽን ውስጥ የመጀመሪያው ይመስላል አገልጋይ ያልያዘ. እና በጣም ጥሩው ነገር ለአሊስ ችሎታዎች በአጠቃላይ ነፃ ስለሆኑ ከዚያን ጊዜ ጀምሮ በእኔ እይታ ውስጥ ናቸው። ግን አስቀድመን እንጀምር.

እስቲ ይህንን ሁኔታ በዓይነ ሕሊናህ እናስብ። የእርስዎ መተግበሪያ (ለምሳሌ፣ የአሊስ ችሎታ ያስታውሱ እና ይረሱ በነገራችን ላይ ደግሞ ይሠራል የ Yandex ተግባራት) ተጠቃሚው የዲጂታል ምርትን ለምሳሌ ተጨማሪ አማራጮችን እንዲገዛ ይጋብዛል እና ተጠቃሚው ክፍያ ይፈጽማል። አንዳንድ ዓይነት የክፍያ ስርዓት (በሚያምታታ ተመሳሳይ ከ Yandex.Money) ክፍያውን አከናውኖ ወደ ሰጡት አድራሻ ይልካል (እና የምንደውልበት አገናኝ ይኖረናል። የ Yandex ተግባራት) HTTP- የክፍያ ዝርዝሮችን እንደ መጠን ፣ ሙሉ ስም ፣ የስልክ ቁጥር እና የከፋይ ኢሜል ያሉ የክፍያ ዝርዝሮችን የያዘ ጥያቄ። ይህን ውሂብ በሆነ መንገድ ለማስኬድ እንፈልጋለን፣ ለምሳሌ፡ መጠኑን ያረጋግጡ፣ በመረጃ ቋቱ ውስጥ ተገቢውን ግቤት ያስገቡ፣ ለተጠቃሚዎች ይላኩ ኤስኤምኤስ и ኢሜል የክፍያ ደረሰኝ ማረጋገጫ እና ተጨማሪ መመሪያዎች. ስለዚህ እራስህ ማይክሮ አገልግሎት.

ስለ እንዴት ከ የ Yandex ተግባራት በመረጃ ቋቱ ውስጥ ግቤቶችን ያድርጉ የደመና ፋየር መደብር በትምህርቱ ውስጥ አስቀድመን ተመልክተናል አሊስ ሁሉንም ነገር ታስታውሳለች። (እና ለወደፊቱ ፣ እንደማስበው ፣ ለሌላ የውሂብ ጎታ ምሳሌን እንመለከታለን - የ Yandex ዳታቤዝ). ለተጠቃሚዎች እንዴት እንደሚልክ ኤስኤምኤስ እና የእኛን መተግበሪያ ከ ጋር ያዋህዱ Yandex.Money - በቅርብ ጊዜ ውስጥ እናስተካክለዋለን. አሁን ደብዳቤ መላክን ብቻ እንይ።

1. በ SendGrid ውስጥ መለያ ይፍጠሩ

አመለከተSendGrid የእኔ ምርጫ ብቻ ነው፣ እሱም በተለያዩ ምክንያቶች ያደረግኩት፣ ዋናው ለ Node.js ዝግጁ የሆነ ኤስዲኬ ስላላቸው ነው። ሌላ ማንኛውንም የፖስታ አገልግሎት መምረጥ ይችላሉ።

እንቀጥል ወደ መለያ መመዝገቢያ ገጽ እና እዚያ የመመዝገቢያ ቅጹን ይሙሉ. ከዚያ ወደ እንሄዳለን ዳሽቦርድ፣ በአሰሳ ፓነል ውስጥ ይምረጡ ኢሜል ኤፒአይ -> የውህደት መመሪያእና በዋናው ፓነል ላይ - ድር ኤ.ፒ.አይ. እና нажимаем кнопку መረጠ. ሁሉም ነገር በሥዕሉ ላይ እንደሚታየው ነው.

የ Yandex ተግባራት ደብዳቤ ይልካሉ

በሚቀጥለው ደረጃ እንመርጣለን Node.js:

የ Yandex ተግባራት ደብዳቤ ይልካሉ

በመቀጠል ለራሳችን እናቀርባለን። ኤ ፒ አይ- ቁልፍ ስም (በኮንሶሉ ውስጥ በቁልፍ ዝርዝር ውስጥ ብቻ ይታያል ፣ እና ከወደፊቱ ኮድ ጋር ምንም ግንኙነት የለውም ፣ የማይበላሽ ነገር ይዤ ነው የመጣሁት። demo-api-key) እና ቁልፉን ይጫኑ ቁልፍ ፍጠር:

የ Yandex ተግባራት ደብዳቤ ይልካሉ

ቁልፉ ይፈጠራል, እንገለብጠው እና በጥልቅ መተማመን ውስጥ እናቆየዋለን. እና አዝራር ያለው ማያ ገጽ ይኖረናል ውህደትን ያረጋግጡከዚህ በታች ባለው ሥዕል ላይ እንደሚታየው፣ ግን እስካሁን አንነካውም፣ ግን ኮዱን ለመጻፍ እንሂድ፡-

የ Yandex ተግባራት ደብዳቤ ይልካሉ

2. ኮድ መጻፍ

ግን ኮዱ ራሱ ፣ እርስዎ እንደሚመለከቱት ፣ አስቂኝ ትንሽ ነው - 22 መስመሮች!

የ Yandex ተግባራት ደብዳቤ ይልካሉ

በአግባቡ #8 የእኔ ኢሜል ሃርድ ኮድ የተደረገ ነው (ስለዚህም በአፋርነት ተደብቋል) - እባክዎን የእርስዎን ያመልክቱ። በእውነተኛ ህይወት፣ ሁሉንም መረጃዎች እንቀበላለን። ኢሜይል) ከዕቃ ድርጊት. ለምሳሌ, ዘዴው ከሆነ POST እቃ ወደ ተግባራችን ይላካል ተጠቃሚ ከሜዳ ጋር (ንብረት) ኢሜይልየዚህ መስክ ዋጋ እንደሚከተለው ሊገኝ ይችላል-

const { user } = event;
const email = user.email;

እና የኢሜል አድራሻው ዘዴውን በመጠቀም ወደ ተግባሩ ከተላለፈ አግኝ, ለምሳሌ: https://functions.yandexcloud.net/123abc?[email protected]
መለኪያ እሴት ኢሜይል እንደዚህ ማግኘት ይችላሉ:

const email = event.queryStringParameters.email;

በአንድ ነገር ውስጥ በትክክል ምን እንደሚገኝ ለማየት ድርጊት, በጣም ቀላሉን መፍጠር ይችላሉ የ Yandex ተግባር እና በጥያቄዎች አዙረው፡-

module.exports.handler = async function (event) {
  return {
   'statusCode': 200, 
   'body': JSON.stringify(event)
  };
};

ይህ በበለጠ ዝርዝር (ነገር ግን ግልጽ ያልሆነ) በይፋዊ ሰነዶች ውስጥ ተብራርቷል እዚህ.

ስለዚህ የፕሮጀክት ማውጫ ይፍጠሩ (ለምሳሌ ፣ ሰራተኛ), ወደ እሱ ይሂዱ, ፕሮጀክቱን ያስጀምሩ, ጥገኛዎችን ይጫኑ:

mkdir mailer
cd mailer
npm init -y
npm i @sendgrid/mail email-validator dotenv

እዚህ ጥቅሉ ብቻ ያስፈልጋል @sendgrid/mail. ፕላስቲክ ከረጢት ኢሜል-አረጋጋጭ የኢሜል አድራሻውን ትክክለኛነት ያረጋግጣል (ወዲያውኑ እንዴት አልገመትኩም?) ፣ ግን ስለሱ እርግጠኛ ከሆንን (ያለ እኛ ለረጅም ጊዜ ተረጋግጧል) እሱን መጫን የለብንም (እና ፣ የ እርግጥ ነው, በኮዱ ውስጥ ማረጋገጥ የለብንም). ፕላስቲክ ከረጢት ዶቴንቭ ከፋይል መዝገቦችን ለማንበብ የተነደፈ .env እንደ ሩጫ ጊዜ ተለዋዋጮች። ግን ውስጥ የ Yandex ተግባራት እነዚህን ተለዋዋጮች በቀጥታ ወደ ሩጫ ጊዜ አካባቢ ማስቀመጥ ይቻላል. እንዴት? - ከዚህ በታች አሳይሻለሁ. ስለዚህ ጥቅሉ ዶቴንቭ እንዲሁም እሱን መጫን አይችሉም, እና ፋይሉን .env - አይፍጠሩ, እና በተመሳሳይ ጊዜ ኮዱ በፋይሉ ውስጥ ነው index.js አትለወጡ. ግን እዚህ ይህንን ጥቅል ስለጫንነው ፋይሎችን እንፈጥራለን index.js и .env:

touch index.js
touch .env

በፋይል ውስጥ index.js ከላይ ባለው ቅጽበታዊ ገጽ እይታ ላይ የሚታየውን 22 የኮድ መስመሮችን ይፃፉ (በመስመሩ ውስጥ ብቻ #8 ኢሜልዎን ይቀይሩ) እና በፋይሉ ውስጥ .env - (ያለ ምንም ጥቅሶች ወይም ሥርዓተ-ነጥብ) ጥንድ ይግለጹ - ቁልፍ ስም / እሴት ኤ ፒ አይበቅርብ ጊዜ በኮንሶል ውስጥ የተቀበልነው SendGrid:
SENDGRID_API_KEY=የእርስዎ-በጣም-ሚስጥር-sendgrid-api-key

እና አነስተኛ ስራ ከፈለጉ ፣ ማከማቻውን ይዝጉ እና ፓኬጆቹን ይጫኑ-

git clone https://github.com/stmike/ycf-sendgrid-mailer-tutorial.git
cd ycf-sendgrid-mailer-tutorial
npm i

በፋይል ውስጥ index.js, በአግባቡ #8 ኢሜል ይቀይሩ; በስር ማውጫ ውስጥ ፋይል ይፍጠሩ .env, እና በውስጡ የቁልፉን ስም / ዋጋ ያመልክቱ ኤ ፒ አይ, ልክ ከላይ እንደሚታየው.

3. ማሰማራት

የበለጠ ወይም ያነሰ ግልጽ እና በዝርዝር ስለ Yandex.Cloud እና እዚያ እንዴት ማስቀመጥ እንደሚቻል የ Yandex ተግባራት በጽሑፌ ውስጥ ተገልጿል አሊስ በቢትሪክስ ምድር - አላዋቂዎችን ወደዚህ ሀገር እልካለሁ, እና ለሁሉም (እና ለተመለሱት) - ከዚያም ትንሽ የቀልድ መጽሐፍ (ማለትም ተከታታይ ስዕሎች እና ጽሑፎች).

እኛ እንፈጥራለን ዚፕ- ማህደር (ለምሳሌ እንጥራው) mailer.zip), ማውጫውን የምናካትተው መስቀለኛ_ሞዱሎች እና ፋይሎች .env፣ index.js - ሁሉም ነገር ከፕሮጀክታችን ካታሎግ:

የ Yandex ተግባራት ደብዳቤ ይልካሉ

ከስሙ ጋር አንድ ተግባር እንፈጥራለን ... በትክክል - ሰራተኛ, በግራ የማውጫ ቁልፎች ምናሌ ውስጥ እናስገባለን አርታኢ, የሚፈለጉትን መስኮች ይሙሉ እና ወደ ትሩ ይቀይሩ ዚፕ መዝገብ የእኛን ማህደር አውርድ mailer.zip:

የ Yandex ተግባራት ደብዳቤ ይልካሉ

እና ለማውረድ ከዚህ ቀደም የተጠቀሰው አማራጭ እዚህ አለ። የኤፒአይ ቁልፍ በቀጥታ እዚህ, በፕሮጀክቱ ውስጥ ፋይል ከመፍጠር ይልቅ .env, እና ጥቅሉን አይጫኑ ዶቴንቭ. ነገር ግን ይህንን ሁሉ አስቀድመን አድርገናል, ስለዚህ እኔ ለመረጃ ብቻ ነው የማሳየው. ማለትም ማባዛት አያስፈልግም!

የ Yandex ተግባራት ደብዳቤ ይልካሉ

አሁን በላይኛው ቀኝ ጥግ ላይ አዝራሩን ጠቅ ያድርጉ ሥሪት ፍጠር, እና ሁለት ሰከንዶች ይጠብቁ. ሁሉም ነገር ዝግጁ ሲሆን, በራስ-ሰር ወደ ክፍሉ እንሄዳለን አጠቃላይ እይታ. እዚያም አማራጩን እናነቃለን የህዝብ ተግባርከውጭው ዓለም ጋር መገናኘት እንድትችል.

የ Yandex ተግባራት ደብዳቤ ይልካሉ

ከጽሁፉ በተቃራኒ ሰማያዊውን ማገናኛ ታያለህ ለመደወል አገናኝ? ጠቅ ያድርጉት። ባዶ የአሳሽ መስኮት ይከፈታል... ግን ቆይ - ኢሜይል ደርሶኛል፡-

የ Yandex ተግባራት ደብዳቤ ይልካሉ

አሁን ወደ ኮንሶል መመለስ ይችላሉ SendGrid, እና ቁልፉን ይጫኑ ውህደትን ያረጋግጡ. ስርዓቱ ሁሉንም ነገር በሰርጦቹ በኩል ይፈትሻል፣ በውጤቱም ይህን የመሰለ ስክሪን መመለስ አለበት።

የ Yandex ተግባራት ደብዳቤ ይልካሉ

ያ ነው ፣ ወንዶች (እና ሴቶች ፣ በእርግጥ) - ሁሉም ነገር በእውነቱ በጣም ቀላል እና የሚያምር ነው! ተጨማሪ ጽሑፎች ይኖራሉ. እንደዚህ አይነት ነገር ለማንበብ የሚፈልግ ካለ እንዳያመልጥዎ ለደንበኝነት ይመዝገቡ።

4. ልገሳዎች

የ Yandex ተግባራት ደብዳቤ ይልካሉ

ምንጭ: hab.com

አስተያየት ያክሉ