Namuhla sizodala okuthiwa. Umsebenzi we-Yandex (igama elisemthethweni
Ngiphinde ngimelene (kodwa ngaphandle kokushisekela) kwamaseva endabuko, kanye nomsekeli walokho okubizwa. serverless (ezingenasiphakeli) izixazululo, ngoba angithandi (futhi angazi ngempela) ukuphatha amaseva, futhi ngisho nangaphezulu, ukukhokhela isikhathi lapho zingalayishiwe. Enye into imisebenzi. Othile uyabasiza ngaphandle kwami, futhi ngikhokhela izingcingo kuphela. Ekuqaleni kuka-Okthoba 2019, i-Yandex yethula yayo Imisebenzi ye-Yandex Cloud - kubonakala sengathi ngowokuqala eRussian Federation serverless. Futhi okuhle kakhulu ukuthi ngamakhono ka-Alice ngokuvamile akhululekile, ngakho abelokhu embonweni wami oseduze kusukela ngaleso sikhathi. Kodwa ake siqale kakade.
Ake sicabange ngalesi simo. Isicelo sakho (isibonelo, ikhono lika-Alice
Mayelana nokuthi kusuka kanjani Imisebenzi ye-Yandex yenza okufakiwe kusizindalwazi I-Cloud Firestore sesivele sikubhekile esifundweni
1. Dala i-akhawunti ku-SendGrid
UkubhalaI-SendGrid iwukukhetha kwami ββnje, engikwenze ngenxa yezizathu ezimbalwa, esiyinhloko ukuthi bane-SDK eseyenziwe ngomumo ye-Node.js. Ungakhetha noma iyiphi enye isevisi yokuposa.
Asiqhubeke
Esinyathelweni esilandelayo sikhetha I-Node.js:
Okulandelayo sifika nokwethu API-igama elingukhiye (lizovezwa kuphela kukhonsoli ohlwini lokhiye, futhi alihlangene nekhodi yethu yesikhathi esizayo; ngisanda kuthola into engenakonakala. demo-api-key) bese ucindezela inkinobho Dala ukhiye:
Ukhiye uzokhiqizwa, sizowukopisha futhi siwugcine ngokuzethemba okujulile. Futhi sizoba nesikrini esinenkinobho Qinisekisa Ukuhlanganisa, njengasesithombeni esingezansi, kodwa ngeke siyichofoze okwamanje, kodwa asiqhubekele ekubhaleni ikhodi:
2. Ikhodi yokubhala
Kodwa ikhodi ngokwayo, njengoba ubona, incane ngokuhlekisayo - imigqa engu-22!
Emugqeni #8 I-imeyili yami inekhodi eqinile (ngakho ifihliwe ngamahloni) - ngicela ubonise eyakho. Empilweni yangempela, sizothola yonke idatha (kuhlanganise imeyili) kusuka entweni umcimbi. Ngokwesibonelo, uma indlela I-POST into ithunyelwa emsebenzini wethu umsebenzisi nensimu (indawo) imeyili, inani lale nkambu lingatholakala kanje:
const { user } = event;
const email = user.email;
Futhi uma ikheli le-imeyili lidluliselwa kuhlelo kusetshenziswa indlela Tholaisibonelo: https://functions.yandexcloud.net/123abc?[email protected]
inani lepharamitha imeyili ungayithola kanje:
const email = event.queryStringParameters.email;
Ukubheka ukuthi yini ngempela equkethwe entweni umcimbi, ungakha okulula kakhulu Umsebenzi we-Yandex bese uyisonta ngemibuzo:
module.exports.handler = async function (event) {
return {
'statusCode': 200,
'body': JSON.stringify(event)
};
};
Lokhu kuxoxwa ngakho ngokuningiliziwe (kodwa okungacacile) emibhalweni esemthethweni
Ngakho-ke, yakha inkomba yephrojekthi (isibonelo, umthumeli), yiya kuyo, qalisa iphrojekthi, faka ukuncika:
mkdir mailer
cd mailer
npm init -y
npm i @sendgrid/mail email-validator dotenv
Lapha kuphela iphakheji elidingekayo @sendgrid/mail. Isikhwama sepulasitiki i-imeyili-isiqinisekisi ihlola ikheli le-imeyili ukuze liqiniseke (angizange ngiqagele kanjani ngaleso sikhathi?), kodwa uma siqinisekile ngalo (sesivele lihloliwe isikhathi eside ngaphandle kwethu), akudingeki silifake (futhi, kunjalo, akumele sikuhlole kukhodi). Isikhwama sepulasitiki dotenv yakhelwe ukufunda amarekhodi efayelini .inv njengokuguquguquka kwesikhathi sokusebenza. Kodwa ku Imisebenzi ye-Yandex Kungenzeka ukubeka lezi ziguquguqukayo ngqo endaweni yesikhathi sokusebenza. Kanjani? - Ngizokukhombisa ngezansi. Ngakho-ke iphakheji dotenv awukwazi futhi ukuyifaka, kanye nefayela .inv - ungadali, futhi ngesikhathi esifanayo ikhodi isefayeleni index.js ungashintshi. Kodwa lapha sifake le phakheji, ngakho-ke sakha amafayela index.js ΠΈ .inv:
touch index.js
touch .env
Kufayela index.js bhala imigqa yekhodi engama-22 eboniswe esithombeni ngenhla (emgqeni kuphela #8 shintsha i-imeyili yakho), nakufayela .inv - (ngaphandle kwanoma yiziphi izingcaphuno noma izimpawu zokuloba) cacisa ipheya - igama/inani elingukhiye APIesisanda kuyithola kukhonsoli I-SendGrid:
SENDGRID_API_KEY=ukhiye wakho-oyimfihlo kakhulu-sendgrid-api-key
Futhi uma ufuna umsebenzi omncane, hlanganisa indawo yokugcina bese ufaka amaphakheji:
git clone https://github.com/stmike/ycf-sendgrid-mailer-tutorial.git
cd ycf-sendgrid-mailer-tutorial
npm i
Kufayela index.js, emugqeni #8 shintsha i-imeyili; dala ifayela kumkhombandlela wezimpande .inv, futhi kuyo ikhombise igama/inani likakhiye API, njengoba kuboniswe ngenhla.
3. Phakamisa
Ngokucacile noma ngaphansi ngokuningiliziwe mayelana I-Yandex.Cloud nendlela yokuyibeka lapho Imisebenzi ye-Yandex kuchazwe esihlokweni sami
Siyadala zip-ingobo yomlando (ake siyibize, isibonelo, i-mailer.zip), lapho sifaka khona uhla lwemibhalo ama-node_modules kanye namafayela .env, index.js - konke okuvela kukhathalogi yethu yephrojekthi:
Sakha umsebenzi ngegama... ngendlela efanele - umthumeli, kumenyu yesokunxele yokuzulazula esiyifakayo Umhleli, gcwalisa izinkambu ezidingekayo, bese ushintshela kuthebhu Ingobo yomlando ye-ZIP landa ingobo yethu yomlando i-mailer.zip:
Futhi nansi inketho eshiwo ngaphambilini yokulanda Ukhiye we-API ngqo lapha, kunokudala ifayela kuphrojekthi .inv, futhi ungalifaki iphakheji dotenv. Kodwa sesivele sikwenzile konke lokhu, ngakho ngikukhombisa ulwazi nje. Okusho ukuthi, asikho isidingo sokuphinda!
Manje ekhoneni eliphezulu kwesokudla chofoza inkinobho Dala inguqulo, bese ulinda imizuzwana embalwa. Uma konke sekumi ngomumo, sizoya esigabeni ngokuzenzakalelayo Uhlolojikelele. Lapho sizovumela inketho Umsebenzi womphakathiukuze ukwazi ukusebenzisana nalo kusuka emhlabeni wangaphandle.
Ubona isixhumanisi esiluhlaza okwesibhakabhaka esibhekene nombhalo Isixhumanisi sekholi? Yichofoze. Iwindi lesiphequluli elingenalutho lizovuleka... Kodwa linda - ngithole i-imeyili:
Manje ungabuyela kukhonsoli I-SendGrid, bese ucindezela inkinobho Qinisekisa Ukuhlanganisa. Uhlelo luzohlola yonke into ngeziteshi zalo, futhi ngenxa yalokho kufanele lubuyisele isikrini esinjengalesi:
Yilokho, abafana (namantombazane, kunjalo) - konke kulula kakhulu futhi kunhle! Kuzoba nezihloko ezengeziwe. Uma kukhona umuntu onentshisekelo yokufunda into efana nale, bhalisa ukuze ungaphuthelwa.
4. Iminikelo
Source: www.habr.com