Ayyukan Yandex aika wasiku

Ayyukan Yandex aika wasiku

A yau za mu kirkiro abin da ake kira. Yandex aiki (sunan hukuma Ayyukan Yandex Cloud), wanda ya haɗu da sabis na aikawasiku AikaGrid zai aika "sabulu" ga masu amfani da barci cikin kwanciyar hankali (wato kawai - Na san cewa dukkanmu muna adawa da spam).

Ni ma abokin adawa ne (amma ba tare da tsattsauran ra'ayi ba) na sabobin gargajiya, kuma mai goyon bayan abin da ake kira. marar amfani mafita (marasa uwar garke), saboda ba na son (kuma ban san ainihin yadda) don gudanar da sabobin ba, har ma fiye da haka - don biyan lokacin da ba a ɗora su ba. Wani abu kuma shine ayyuka. Wani yana yi musu hidima ba tare da ni ba, kuma ina biyan kuɗin kira kawai. A farkon Oktoba 2019, Yandex ya gabatar da shi Ayyukan Yandex Cloud - da alama shine na farko a cikin Tarayyar Rasha marar amfani. Kuma abin da ke da kyau shi ne cewa don ƙwarewar Alice gabaɗaya suna da 'yanci, don haka tun daga lokacin suke cikin hangen nesa na. Amma bari mu fara riga.

Bari mu yi tunanin wannan yanayin. Aikace-aikacenku (misali, ƙwarewar Alice Ka tuna kuma a manta wanda, ta hanyar, shima yana aiki Yandex ayyuka) yana gayyatar mai amfani don siyan samfurin dijital, misali, ƙarin zaɓuɓɓuka, kuma mai amfani yana biyan kuɗi. Wani nau'in tsarin biyan kuɗi (mai ruɗani kama da Yandex.Money) aiwatar da biyan kuɗi kuma aika shi zuwa adireshin da kuka bayar (kuma za mu sami hanyar haɗi don kira Yandex ayyuka) HTTP- buƙatun mai ɗauke da bayanan biyan kuɗi, kamar adadin kuɗi, cikakken suna, lambar waya da imel ɗin mai biyan kuɗi. Muna son aiwatar da wannan bayanan ta wata hanya, alal misali: duba adadin, yin abubuwan da suka dace a cikin bayanan, aika zuwa masu amfani. SMS и Emel tare da tabbatar da karɓar biyan kuɗi da ƙarin umarni. Don haka kanku microservice.

Game da yadda daga Yandex ayyuka yi shigarwa a cikin database Cloud Firestore Mun riga mun duba shi a cikin koyawa Alice ta tuna komai (kuma a nan gaba, ina tsammanin, za mu yi la'akari da misali ga wani database - Yandex Database). Game da yadda ake aikawa zuwa masu amfani SMS da kuma haɗa aikace-aikacen mu da Yandex.Money - za mu warware shi nan gaba kadan. Yanzu bari mu kawai magance aika haruffa.

1. Ƙirƙiri asusu a cikin SendGrid

ПримечаниеSendGrid zabina ne kawai, wanda na yi saboda dalilai da yawa, babban ɗayan shine cewa suna da shirye-shiryen SDK don Node.js. Kuna iya zaɓar kowane sabis ɗin aikawasiku.

Mu ci gaba zuwa shafin rajistar asusun sannan ka cika fom din rajista a wurin. Sai muje zuwa Gaban, a cikin maɓallin kewayawa zaɓi API ɗin Imel -> Jagorar Haɗin kai, kuma a kan babban panel - API na Yanar gizo da sauransu zabi. Komai yana kamar a cikin hoton:

Ayyukan Yandex aika wasiku

A mataki na gaba za mu zaɓa Node.js:

Ayyukan Yandex aika wasiku

Na gaba mu fito da namu APISunan maɓalli (za a nuna shi kawai a cikin na'ura wasan bidiyo a cikin jerin maɓallai, kuma ba shi da alaƙa da lambar mu ta gaba; Na zo ne da mara lalacewa. demo-api-key) kuma danna maɓallin Ƙirƙiri Maɓalli:

Ayyukan Yandex aika wasiku

Za a samar da maɓalli, za mu kwafa shi kuma mu kiyaye shi a cikin zurfin amincewa. Kuma za mu sami allo tare da maɓalli Tabbatar da Haɗin kai, kamar yadda yake a hoton da ke ƙasa, amma ba za mu danna shi ba tukuna, amma bari mu ci gaba zuwa rubuta lambar:

Ayyukan Yandex aika wasiku

2. Rubutun rubutu

Amma lambar kanta, kamar yadda kake gani, ƙananan ƙananan - 22 Lines!

Ayyukan Yandex aika wasiku

A cikin layi #8 Imel nawa mai lamba ne (saboda haka a boye a cikin kunya) - da fatan za a nuna naku. A rayuwa ta ainihi, za mu karɓi duk bayanan (ciki har da email) daga abu taron. Misali, idan hanyar POST an aika wani abu zuwa aikinmu mai amfani tare da fili (dukiya) email, ana iya samun darajar wannan filin kamar haka:

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

Kuma idan an wuce adireshin imel zuwa aikin ta amfani da hanyar SAMU, alal misali: https://functions.yandexcloud.net/123abc?[email protected]
ƙimar siga email za ku iya samun shi kamar haka:

const email = event.queryStringParameters.email;

Don duba ainihin abin da ke cikin abu taron, zaka iya ƙirƙirar mafi sauƙi Yandex aiki kuma ku karkatar da shi da tambayoyi:

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

Ana tattauna wannan dalla-dalla (amma ƙasa da ƙasa) a cikin takaddun hukuma a nan.

Don haka, ƙirƙiri kundin tsarin aiki (misali, mailam), je zuwa gare ta, fara aikin, shigar da dogara:

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

Anan kunshin kawai ake buƙata @sendgrid/mail. Jakar filastik e-mail mai tabbatarwa duba adireshin imel don inganci (ta yaya ban yi tsammani ba nan da nan?), Amma idan mun tabbata (an riga an bincika shi na dogon lokaci ba tare da mu ba), ba lallai ne mu shigar da shi ba (kuma, na Hakika, ba dole ba ne mu duba shi a cikin code). Jakar filastik dotenv tsara don karanta bayanai daga fayil .env a matsayin masu canza lokacin gudu. Amma a Yandex ayyuka Yana yiwuwa a sanya waɗannan masu canji kai tsaye cikin yanayin lokacin aiki. yaya? - Zan nuna a kasa. Saboda haka kunshin dotenv Hakanan ba za ku iya shigar da fayil ɗin ba .env - kar a ƙirƙira, kuma a lokaci guda lambar tana cikin fayil ɗin index.js kar a canza. Amma a nan mun shigar da wannan kunshin, don haka muna ƙirƙirar fayiloli index.js и .env:

touch index.js
touch .env

A cikin fayil index.js rubuta layin lamba 22 da aka nuna a hoton da ke sama (a cikin layi kawai #8 canza imel), kuma a cikin fayil ɗin .env - (ba tare da wani ƙididdiga ko alamar rubutu ba) ƙididdige su biyun - suna / ƙimar maɓalli APIwanda muka samu kwanan nan a cikin console AikaGrid:
SENDGRID_API_KEY= sirrin ku-sendgrid-api-key

Kuma idan kuna son ƙarancin aiki, rufe wurin ajiyar kuma shigar da fakitin:

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

A cikin fayil index.js, cikin layi #8 canza imel; ƙirƙirar fayil a cikin tushen directory .env, kuma a ciki yana nuna sunan/darajar maɓalli API, kamar yadda aka nuna a sama.

3. Sanya

Fiye ko žasa a sarari kuma daki-daki game da Yandex.Cloud da yadda ake sanya shi a can Yandex ayyuka aka bayyana a cikin labarina Alice a cikin ƙasar Bitrix - Ina aika jahilai zuwa kasar nan, kuma ga kowa da kowa (da wadanda suka dawo) - sai karamin littafin ban dariya (watau jerin hotuna da rubutu).

Mun halitta zip- Ajiyayyen (bari mu kira shi, misali, mailer.zip), wanda muka haɗa da directory node_modules da fayiloli .env, index.js - komai daga kundin aikin mu:

Ayyukan Yandex aika wasiku

Mun ƙirƙira aiki tare da sunan... daidai - mailam, a cikin menu na kewayawa na hagu mun shigar Edita, cika filayen da ake buƙata, kuma canza zuwa shafin Taskar ZIP zazzage tarihin mu mailer.zip:

Ayyukan Yandex aika wasiku

Kuma ga zaɓin da aka ambata a baya don saukewa API key kai tsaye a nan, maimakon ƙirƙirar fayil a cikin aikin .env, kuma kar a shigar da kunshin dotenv. Amma mun riga mun yi duk wannan, don haka ina nuna shi don bayani kawai. Wato, babu buƙatar kwafi!

Ayyukan Yandex aika wasiku

Yanzu a saman kusurwar dama danna maɓallin Ƙirƙiri Sigar, kuma jira daƙiƙa biyu. Lokacin da komai ya shirya, za mu tafi ta atomatik zuwa sashin Siffar. A can za mu kunna zaɓi aikin jama'adon ku iya mu'amala da shi daga waje.

Ayyukan Yandex aika wasiku

Kuna ganin shuɗin mahaɗin da ke gaban rubutun Hanyar haɗi don kira? Danna shi. Za a buɗe taga mai amfani da babu komai... Amma jira - Na karɓi imel:

Ayyukan Yandex aika wasiku

Yanzu zaku iya komawa zuwa na'urar wasan bidiyo AikaGrid, kuma danna maɓallin Tabbatar da Haɗin kai. Tsarin zai duba komai ta tashoshinsa, kuma a sakamakon haka yakamata ya dawo da allo kamar haka:

Ayyukan Yandex aika wasiku

Shi ke nan, mutane (da 'yan mata, ba shakka) - duk abin da gaske ne mai sauqi qwarai da kuma m! Za a sami ƙarin labarai. Idan akwai mai sha'awar karanta wani abu kamar wannan, ku yi subscribing domin kada ku rasa.

4. Kyauta

Ayyukan Yandex aika wasiku

source: www.habr.com

Add a comment