Ọrụ Yandex na-eziga ozi

Ọrụ Yandex na-eziga ozi

Taa, anyị ga-emepụta ihe a na-akpọ. Yandex ọrụ (aha ọchịchị Ọrụ Yandex Cloud), nke jikọrọ ya na ọrụ nzipu ozi SendGrid ga-eziga "ncha" ndị ọrụ na-ehi ụra n'udo (naanị na-egwu egwu - amaara m na anyị niile na-emegide spam).

Abụkwa m onye mmegide (ma na-enweghị mmasị) nke sava ọdịnala, na onye na-akwado ihe a na-akpọ. nhazi Ihe ngwọta (enweghị ihe nkesa), n'ihi na anaghị amasị m (ma amaghị m otú e si elekọta) sava, na ọbụna karịa, kwụọ ụgwọ maka oge mgbe ha na-adịghị. Ihe ọzọ bụ ọrụ. Otu onye na-ejere ha ozi na-enweghị m, ana m akwụ naanị maka oku. Na mbido Ọktoba 2019, Yandex gosipụtara ya Ọrụ Yandex Cloud - yiri ka ọ bụ nke mbụ na Russian Federation nhazi. Ma ihe kachasị mma bụ na maka nkà Alice, ha na-enwere onwe ha n'ozuzu ya, ya mere ha anọwo na ọhụụ m na-ahụ anya kemgbe ahụ. Ma ka anyị malite ugbua.

Ka anyị were ihe atụ a. Ngwa gị (dịka ọmụmaatụ, nka Alice Cheta ma chefuo nke, site n'ụzọ, na-arụkwa ọrụ Yandex ọrụ) na-enye onye ọrụ ịzụta ngwaahịa dijitalụ, dịka ọmụmaatụ, nhọrọ ndị ọzọ, na onye ọrụ na-akwụ ụgwọ. Ụdị usoro ịkwụ ụgwọ (dị mgbagwoju anya yiri Yandex.Money) na-ahazi ugwo ahụ wee ziga ya na adreesị ị nyere (anyị ga-enwe njikọ ịkpọ Yandex ọrụ) Http-Arịrịọ nwere nkọwa ịkwụ ụgwọ, dị ka ego, aha zuru oke, nọmba ekwentị na email nke onye na-akwụ ụgwọ. Anyị chọrọ ịhazi data a n'ụzọ ụfọdụ, dịka ọmụmaatụ: lelee ego ahụ, tinye ntinye kwesịrị ekwesị na nchekwa data, zigara ndị ọrụ. SMS и email na nkwenye nke nnata nke ịkwụ ụgwọ na ntụziaka ndị ọzọ. Ya mere onwe gị microservice.

Banyere ka si Yandex ọrụ tinye ndenye na nchekwa data Igwe ojii Fire anyị lere ya anya na nkuzi Alice na-echeta ihe niile (na n'ọdịnihu, echere m, anyị ga-atụle ihe atụ maka nchekwa data ọzọ - Yandex database). Banyere otu esi ezigara ndị ọrụ SMS ma jikọta ngwa anyị na Yandex.Ego - anyị ga-edozi ya n'ọdịnihu dị nso. Ugbu a, ka anyị na-emeso iziga akwụkwọ ozi.

1. Mepụta akaụntụ na SendGrid

ПримечаниеSendGrid bụ naanị nhọrọ m, nke m mere maka ọtụtụ ihe kpatara ya, nke bụ isi bụ na ha nwere SDK emebere maka Node.js. Ị nwere ike ịhọrọ ọrụ nzipu ozi ọ bụla ọzọ.

Ezi uche m na ibe ndebanye aha akaụntụ ma dejupụta fọm ndebanye aha ebe ahụ. Mgbe ahụ, anyị na-aga Dashboard, na nsoro ụzọ họrọ Email API -> Ntuziaka njikọta, na na isi panel - API weebụ na ihe ndị ọzọ họrọ. Ihe niile dị ka ọ dị na foto a:

Ọrụ Yandex na-eziga ozi

Na nzọụkwụ ọzọ anyị họrọ Node.js:

Ọrụ Yandex na-eziga ozi

Ọzọ anyị ga-abịa maka nke anyị API-isi aha (a ga-egosipụta naanị na njikwa na ndepụta igodo, ọ nweghịkwa ihe jikọrọ ya na koodu anyị n'ọdịnihu; M wee nweta ihe na-adịghị emebi emebi. demo-api-key) ma pịa bọtịnụ Mepụta igodo:

Ọrụ Yandex na-eziga ozi

A ga-emepụta igodo ahụ, anyị ga-eṅomi ya ma debe ya na ntụkwasị obi miri emi. Na anyị ga-enwe ihuenyo nwere bọtịnụ Chọpụta njikọta, dị ka ọ dị na foto dị n'okpuru, mana anyị agaghị pịnye ya, mana ka anyị gaa n'ihu na-ede koodu:

Ọrụ Yandex na-eziga ozi

2. Koodu ederede

Ma koodu n'onwe ya, dị ka ị pụrụ ịhụ, bụ ihe ọchị obere - 22 ahịrị!

Ọrụ Yandex na-eziga ozi

N'ahịrị #8 Email m bụ koodu siri ike (ma ya mere na-ezochi ya ihere) - biko gosi nke gị. Na ndụ n'ezie, anyị ga-enweta data niile (gụnyere email) site na ihe omume. Ka ihe atụ, ọ bụrụ na usoro POST a na-ezigara ihe n'ọrụ anyị onye ọrụ nwere ubi (ihe onwunwe) email, enwere ike nweta uru nke ubi a dị ka nke a:

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

Ma ọ bụrụ na agafere adreesị ozi-e na ọrụ ahụ site na iji usoro ahụ GET, dịka ọmụmaatụ: https://functions.yandexcloud.net/123abc?email=user@example.com
znachenie oke email ị nwere ike nweta ya dị ka nke a:

const email = event.queryStringParameters.email;

Ka ileba anya n'ihe dị n'ime ihe omume, ị nwere ike ịmepụta ihe kachasị mfe Yandex ọrụ ma jiri ajụjụ tụgharịa ya:

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

A na-atụle nke a n'ụzọ zuru ezu (mana o doro anya) na akwụkwọ gọọmentị ebe a.

Yabụ, mepụta ndekọ ọrụ (dịka ọmụmaatụ, ozi), gaa na ya, bido ọrụ ahụ, wụnye ndabere:

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

Ebe a naanị ngwugwu achọrọ @sendgrid/mail. Akpa rọba onye nkwado email na-enyocha adreesị ozi-e maka ịdị irè (kedu ka m na-atụghị anya ozugbo?), Ma ọ bụrụ na anyị ejiri n'aka na ya (a enyochala ya ogologo oge na-enweghị anyị), anyị agaghị etinye ya (na, nke N'ezie, anyị ekwesịghị ịlele ya na koodu). Akpa rọba dotenv emebere iji gụọ ndekọ sitere na faịlụ .nke dị ka runtime variables. Ma n'ime Yandex ọrụ Ọ ga-ekwe omume idobe mgbanwe ndị a ozugbo na gburugburu oge ịgba ọsọ. Kedu? - Aga m egosi ya n'okpuru. Ya mere ngwugwu dotenv ị nwekwara ike ịwụnye faịlụ .nke - emela, ma n'otu oge ahụ koodu dị na faịlụ ahụ index.js agbanwela. Mana ebe a anyị etinyela ngwugwu a, yabụ anyị na-emepụta faịlụ index.js и .nke:

touch index.js
touch .env

Na faịlụ index.js dee ahịrị koodu 22 egosiri na nseta ihuenyo dị n'elu (naanị n'ahịrị #8 gbanwee email gị), na na faịlụ .nke - (na-enweghị ihe ọ bụla ruturu ma ọ bụ akara edemede) ezipụta ụzọ abụọ - isi aha / uru APInke anyị nwetara na nso nso a na console SendGrid:
SENDGRID_API_KEY=ihe nzuzo gị-sendgrid-api-key

Ma ọ bụrụ na ịchọrọ obere ọrụ, mechie ebe nchekwa ma wụnye ngwugwu:

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

Na faịlụ index.js, n'ahịrị #8 gbanwee email; mepụta faịlụ na ndekọ mgbọrọgwụ .nke, na n'ime ya gosi aha/uru igodo ahụ API, dị ka egosiri n'elu.

3. Nyefee

More ma ọ bụ obere doro anya na n'ụzọ zuru ezu banyere Yandex.Cloud na otu esi etinye ya ebe ahụ Yandex ọrụ kọwara n'isiokwu m Alice na ala Bitrix - M na-eziga ndị na-amaghị ihe na mba a, na maka onye ọ bụla (na ndị laghachiri), mgbe ahụ, obere akwụkwọ egwu (ya bụ, usoro foto na ederede).

Ana m ahazi zip- Archive (ka anyị kpọọ ya, ọmụmaatụ, mailer.zip), nke anyị na-agụnye akwụkwọ ndekọ aha node_modulu m faịlụ .env, index.js - ihe niile sitere na katalọgụ ọrụ anyị:

Ọrụ Yandex na-eziga ozi

Anyị na-emepụta ọrụ na aha ... n'ụzọ ziri ezi - ozi, na menu igodo aka ekpe anyị na-abanye Onye editọ, dejupụta mpaghara achọrọ, wee gbanwee gaa na taabụ Ebe nchekwa ZIP budata ebe nchekwa anyị mailer.zip:

Ọrụ Yandex na-eziga ozi

Ma ebe a bụ nhọrọ a kpọtụrụ aha na mbụ ibudata igodo API ozugbo ebe a, kama ịmepụta faịlụ na ọrụ ahụ .nke, ma etinyela ngwugwu ahụ dotenv. Mana anyị emelarị ihe a niile, yabụ ana m egosi ya naanị maka ozi. Ya bụ, ọ dịghị mkpa ka oyiri!

Ọrụ Yandex na-eziga ozi

Ugbu a na akuku aka nri elu pịa bọtịnụ Mepụta ụdị, ma chere nkeji ole na ole. Mgbe ihe niile dị njikere, anyị ga-akpaghị aka na-aga na ngalaba nnyocha. N'ebe ahụ anyị ga-eme ka nhọrọ Ọrụ ọhaka i wee nwee ike imekọrịta ya site na mpụga ụwa.

Ọrụ Yandex na-eziga ozi

Ị na-ahụ njikọ na-acha anụnụ anụnụ na-emegide ihe odide ahụ Njikọ oku? Pịa ya. Window ihe nchọgharị efu ga-emeghe... Mana chere - enwetara m email:

Ọrụ Yandex na-eziga ozi

Ugbu a ị nwere ike ịlaghachi na console SendGrid, wee pịa bọtịnụ Chọpụta njikọta. Usoro ahụ ga-enyocha ihe niile site na ọwa ya, n'ihi ya, ọ ga-eweghachi ihuenyo dị ka nke a:

Ọrụ Yandex na-eziga ozi

Nke ahụ bụ ya, ụmụ okorobịa (na ụmụ agbọghọ, n'ezie) - ihe niile dị nnọọ mfe ma mara mma! A ga-enwekwu akụkọ. Ọ bụrụ na onye ọ bụla nwere mmasị ịgụ ihe dị ka nke a, denye aha ka ị ghara ịgbaghara.

4. Onyinye

Ọrụ Yandex na-eziga ozi

isi: www.habr.com

Zụta nnabata ntụkwasị obi maka saịtị nwere nchekwa DDoS, sava VPS VDS 🔥 Zụta ebe nrụọrụ weebụ a pụrụ ịtụkwasị obi na nchekwa DDoS, sava VPS VDS | ProHoster