Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ဒီနေ့ ကျွန်တော်တို့ ဖန်တီးမယ့် ဒါခေါ်တာ။ Yandex လုပ်ဆောင်ချက် (တရားဝင်အမည် Yandex တိမ်တိုက်လုပ်ဆောင်ချက်များ) စာပို့ဝန်ဆောင်မှုနှင့် ညှိနှိုင်းဆောင်ရွက်ခြင်း SendGrid ငြိမ်းချမ်းစွာ အိပ်စက်နေသော အသုံးပြုသူများထံ “ဆပ်ပြာ” ပေးပို့ပါမည် (နောက်တာပါ - ကျွန်ုပ်တို့အားလုံး spam များကို ဆန့်ကျင်ကြသည်ကို သိပါသည်)။

ကျွန်ုပ်သည် ရိုးရာဆာဗာများ၏ ပြိုင်ဘက် (သို့သော် တယူသန်မှုမရှိဘဲ) နှင့် ၎င်းကို ထောက်ခံသူဖြစ်သည်။ serverless (ဆာဗာမဲ့) ဖြေရှင်းနည်းများကို ကျွန်ုပ်မကြိုက်သောကြောင့် (ဆာဗာများကို စီမံခန့်ခွဲနည်းကို ကျွန်ုပ်တကယ်မသိပါ) နှင့် ထို့ထက်ပင် ၎င်းတို့ကို မတင်ဆောင်သည့်အချိန်အတွက် ပေးချေပါ။ နောက်တစ်ခုက လုပ်ဆောင်ချက်တွေပါ။ တစ်စုံတစ်ယောက်သည် ကျွန်ုပ်မပါဘဲ ၎င်းတို့ကို ဝန်ဆောင်မှုပေးကာ ဖုန်းခေါ်ဆိုမှုအတွက်သာ ကျွန်ုပ်ပေးဆောင်ပါသည်။ 2019 ခုနှစ် အောက်တိုဘာလအစတွင် Yandex က ၎င်း၏အကြောင်းကို တင်ပြခဲ့သည်။ Yandex တိမ်တိုက်လုပ်ဆောင်ချက်များ - ရုရှားဖက်ဒရေးရှင်းတွင်ပထမဆုံးဖြစ်ပုံရသည်။ serverless. အထူးသဖြင့် ဝမ်းသာစရာမှာ အဲလစ်၏ ကျွမ်းကျင်မှုများကြောင့် ၎င်းတို့သည် ယေဘူယျအားဖြင့် အခမဲ့ဖြစ်သည်၊ ထို့ကြောင့် ၎င်းတို့သည် ကျွန်ုပ်၏ အရံအမြင်အာရုံတွင် အစဉ်ရှိနေခဲ့သည်။ ဒါပေမယ့် စလိုက်ကြရအောင်။

ဒီဇာတ်လမ်းကို စိတ်ကူးကြည့်ရအောင်။ သင်၏လျှောက်လွှာ (ဥပမာ၊ အဲလစ်၏ကျွမ်းကျင်မှု သတိရပြီး မေ့လိုက်ပါ။ ထိုနည်းလည်းကောင်းပင်၊ Yandex လုပ်ဆောင်ချက်များ) ဒစ်ဂျစ်တယ်ထုတ်ကုန်တစ်ခုဝယ်ယူရန် သုံးစွဲသူအား ဖိတ်ခေါ်သည်၊ ဥပမာ၊ အပိုရွေးချယ်စရာများနှင့် ငွေပေးချေမှုတစ်ခုပြုလုပ်သည်။ အချို့သောငွေပေးချေမှုစနစ် (ရှုပ်ထွေးပုံနှင့်ဆင်တူသည်။ Yandex) ငွေပေးချေမှုကို လုပ်ဆောင်ပြီး သင်ပေးဆောင်သည့် လိပ်စာသို့ ပေးပို့ပါ (ကျွန်ုပ်တို့ထံ ဖုန်းဆက်ရန် လင့်ခ်တစ်ခု ရှိပါမည်။ Yandex လုပ်ဆောင်ချက်များ) သည် HTTP- ငွေပေးချေမှုအသေးစိတ်များဖြစ်သည့် ပမာဏ၊ အမည်အပြည့်အစုံ၊ ဖုန်းနံပါတ်နှင့် ငွေပေးချေသူ၏ အီးမေးလ်တို့ပါရှိသော တောင်းဆိုချက်။ ကျွန်ုပ်တို့သည် ဤဒေတာကို တစ်နည်းတစ်ဖုံ လုပ်ဆောင်လိုသည်၊ ဥပမာ- ပမာဏကို စစ်ဆေးပါ၊ ဒေတာဘေ့စ်တွင် သင့်လျော်သော ထည့်သွင်းမှုများကို ပြုလုပ်ပါ၊ အသုံးပြုသူများထံ ပေးပို့ပါ။ စာတို и အီးမေးလ်လိပ်စာ ငွေပေးချေမှုလက်ခံရရှိကြောင်းအတည်ပြုခြင်းနှင့် နောက်ထပ်ညွှန်ကြားချက်များနှင့်အတူ။ ဒီတော့ ကိုယ့်ကိုယ်ကို မိုက်ခရိုဝန်ဆောင်မှု.

ဘယ်လိုအကြောင်းကြောင့်လဲ။ Yandex လုပ်ဆောင်ချက်များ ဒေတာဘေ့စ်တွင်ထည့်သွင်းမှုများပြုလုပ်ပါ။ Cloud Firestore အဲဒါကို ကျူတိုရီရယ်မှာ ကြည့်ထားပြီးသား အဲလစ်က အရာအားလုံးကို မှတ်မိတယ်။ (အနာဂတ်တွင်၊ ကျွန်ုပ်တို့သည် အခြားဒေတာဘေ့စ်အတွက် ဥပမာတစ်ခုကို စဉ်းစားရလိမ့်မည်- Yandex ဒေတာဘေ့စ်) အသုံးပြုသူများထံ မည်ကဲ့သို့ ပေးပို့ရမည်နည်း။ စာတို နှင့်ကျွန်ုပ်တို့၏လျှောက်လွှာနှင့်အတူပေါင်းစပ် Yandex.Money - မဝေးတော့တဲ့အနာဂတ်မှာ ကျွန်တော်တို့ ရှင်းမယ်။ ကဲ စာတွေပို့တာကိုပဲ စလိုက်ရအောင်။

1. SendGrid တွင် အကောင့်တစ်ခုဖန်တီးပါ။

ပွောဆိုSendGrid သည် အကြောင်းအမျိုးမျိုးကြောင့် ကျွန်ုပ်ပြုလုပ်ခဲ့သော ကျွန်ုပ်၏ရွေးချယ်မှုသာဖြစ်ပြီး၊ အဓိကအချက်မှာ ၎င်းတို့တွင် Node.js အတွက် အဆင်သင့်လုပ်ထားသော SDK ရှိသည်။ အခြားစာပို့ဝန်ဆောင်မှုကို သင်ရွေးချယ်နိုင်ပါသည်။

ဆက်ကြရအောင် အကောင့်မှတ်ပုံတင်ခြင်းစာမျက်နှာသို့ အဲဒီမှာ မှတ်ပုံတင်ဖောင်ဖြည့်ပါ။ ပြီးရင် ငါတို့သွားမယ်။ Dashboardလမ်းညွှန်မှုအကန့်တွင် ရွေးချယ်ပါ။ အီးမေးလ် API -> ပေါင်းစည်းခြင်းလမ်းညွှန်နှင့် ပင်မအကန့်တွင် - Web API ကို жимажимаемкнопку ရှေးခယျြ. အားလုံးက ပုံမှာပြထားတဲ့အတိုင်းပါပဲ

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

နောက်တစ်ဆင့်တွင် ကျွန်ုပ်တို့ ရွေးချယ်ပါ။ Node.js:

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

နောက်တစ်ခုက ငါတို့အတွက် တက်လာမယ်။ API ကို-key အမည် (သော့များစာရင်းတွင် ကွန်ဆိုးလ်တွင်သာ ပြသမည်ဖြစ်ပြီး၊ ကျွန်ုပ်တို့၏ အနာဂတ်ကုဒ်နှင့် ဘာမှမဆိုင်ပါ၊ ကျွန်ုပ်သည် မပျက်စီးနိုင်သော ကုဒ်တစ်ခုဖြင့် ပေါ်လာပါသည်။ demo-api-key) ခလုတ်ကိုနှိပ်ပါ။ သော့ဖန်တီးပါ။:

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

သော့ကိုထုတ်ပေးမည်ဖြစ်ပြီး၊ ကျွန်ုပ်တို့က ၎င်းကို ကူးယူပြီး အနက်ရှိုင်းဆုံးယုံကြည်မှုတွင် သိမ်းဆည်းထားမည်ဖြစ်သည်။ ပြီးတော့ ငါတို့မှာ ခလုတ်တစ်ခုပါတဲ့ မျက်နှာပြင်တစ်ခု ရှိမယ်။ ပေါင်းစည်းမှုကို အတည်ပြုပါ။အောက်ပုံပါအတိုင်း၊ ကျွန်ုပ်တို့သည် ၎င်းကို မနှိပ်ရသေးပါ၊ သို့သော် ကုဒ်ကိုရေးရန် ဆက်သွားကြပါစို့။

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

2. ကုဒ်ရေးခြင်း။

ဒါပေမယ့် ကုဒ်ကိုယ်တိုင်က မြင်တဲ့အတိုင်း ရယ်စရာကောင်းလောက်အောင် သေးငယ်ပါတယ် - 22 လိုင်း။

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

တန်းဝင်ကာစီသည် #8 ကျွန်ုပ်၏အီးမေးလ်သည် hardcoded ဖြစ်သည် (ထို့ကြောင့် ရှက်ရွံ့စွာ ဝှက်ထားသည်) - ကျေးဇူးပြု၍ သင့်အကြောင်း ဖော်ပြပါ။ လက်တွေ့ဘဝတွင်၊ ကျွန်ုပ်တို့သည် ဒေတာ (အပါအဝင်) အားလုံးကို လက်ခံရရှိမည်ဖြစ်သည်။ အီးမေးလ်က) အရာဝတ္ထုမှ အဖြစ်အပျက်. ဥပမာဆိုရရင် နည်းလမ်း POST အရာဝတ္ထုတစ်ခုသည် ကျွန်ုပ်တို့၏လုပ်ဆောင်ချက်သို့ ပေးပို့သည်။ အသုံးပြုသူကို အကွက် (အိမ်ခြံမြေ)၊ အီးမေးလ်ကဤအကွက်၏တန်ဖိုးကို ဤကဲ့သို့ရရှိနိုင်သည်-

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

နည်းလမ်းကို အသုံးပြု၍ အီးမေးလ်လိပ်စာကို လုပ်ဆောင်ချက်သို့ ပေးပို့ပါက၊ GETဥပမာ: https://functions.yandexcloud.net/123abc?email=user@example.com
ကန့်သတ်တန်ဖိုး အီးမေးလ်က သင်ဤကဲ့သို့ရနိုင်သည်-

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/မေးလ်. ပလပ်စတစ်အိတ် အီးမေးလ်-အတည်ပြုပေးသူ အီးမေးလ်လိပ်စာကို မှန်ကန်မှု ရှိမရှိ စစ်ဆေးသည် (ချက်ချင်း ဘယ်လိုမှ မှန်းဆလို့ မရခဲ့ပါဘူး)၊ ဒါပေမယ့် အဲဒါကို သေချာရင် (ကျွန်ုပ်တို့ မပါဘဲ အချိန်အတော်ကြာ စစ်ဆေးပြီးပါပြီ)၊ အဲဒါကို ထည့်သွင်းဖို့ မလိုပါဘူး။ ဟုတ်ပါတယ်၊ ကုဒ်မှာ စစ်စရာမလိုပါဘူး)။ ပလပ်စတစ်အိတ် dotenv ဖိုင်တစ်ခုမှ မှတ်တမ်းများကို ဖတ်ရန် ဒီဇိုင်းထုတ်ထားသည်။ .env runtime variable များအဖြစ်။ ဒါပေမယ့် Yandex လုပ်ဆောင်ချက်များ ဤကိန်းရှင်များကို runtime ပတ် ၀ န်းကျင်တွင်တိုက်ရိုက်ထည့်နိုင်သည်။ ဘယ်လိုလဲ? - အောက်မှာ ပြပေးပါမယ်။ ထို့ကြောင့် အထုပ် dotenv သင်လည်း ၎င်းကို ထည့်သွင်း၍ မရပါ။ .env - မဖန်တီးပါနှင့် တစ်ချိန်တည်းမှာပင် ကုဒ်သည် ဖိုင်ထဲတွင် ရှိနေသည်။ index.js မပြောင်းဘူး။ သို့သော် ဤနေရာတွင် ကျွန်ုပ်တို့သည် ဤပက်ကေ့ခ်ျကို ထည့်သွင်းထားသောကြောင့် ဖိုင်များကို ဖန်တီးပါသည်။ index.js и .env:

touch index.js
touch .env

ဖိုင်ထဲမှာ index.js အပေါ်က screenshot မှာပြထားတဲ့ ကုဒ် 22 ကြောင်းကိုရေးပါ (စာကြောင်းထဲမှာသာ #8 သင်၏အီးမေးလ်ကိုပြောင်းပါ) နှင့်ဖိုင်တွင် .env - (အကိုးအကား သို့မဟုတ် ပုဒ်ဖြတ်ပုဒ်မမပါဘဲ) တွဲ-သော့အမည်/တန်ဖိုးကို သတ်မှတ်ပါ။ API ကိုကွန်ဆိုးလ်တွင် ကျွန်ုပ်တို့ မကြာသေးမီက ရရှိထားသော အရာများ SendGrid:
SENDGRID_API_KEY=your-very-secret-sendgrid-api-key

အလုပ်နည်းလိုပါက၊ repository ကိုပွားပြီး packages များကို install လုပ်ပါ။

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

ဖိုင်ထဲမှာ index.js, တန်းဝင်ကာစီသည် #8 အီးမေးလ်ကိုပြောင်းပါ။ root directory တွင်ဖိုင်တစ်ခုဖန်တီးပါ။ .env၎င်းတွင် သော့၏အမည်/တန်ဖိုးကို ဖော်ပြပါ။ API ကိုအပေါ်မှာပြထားတဲ့အတိုင်းပါ။

3. ချထားပါ။

အနည်းနှင့်အများ ရှင်းရှင်းလင်းလင်းအသေးစိတ်နှင့် ပတ်သက်သည်။ Yandex.Cloud အဲဒီမှာ ဘယ်လိုနေရာရလဲ။ Yandex လုပ်ဆောင်ချက်များ ငါ့ဆောင်းပါးတွင်ဖော်ပြထားသည်။ Bitrix ၏ပြည်၌အဲလစ် - မသိနားမလည်သူတွေကို ဒီနိုင်ငံကို ပို့ပေးပြီး တခြားသူ (ပြန်လာသူတွေ) နဲ့ ရုပ်ပြစာအုပ်ငယ်လေး (ဥပမာ ပုံနဲ့ စာသားပါ)။

ငါတို့ဖန်တီးတယ်။ ဇစ်-archive (ဥပမာ၊ အဲဒါကို ခေါ်ရအောင်၊ mailer.zip) တွင် ကျွန်ုပ်တို့သည် လမ်းညွှန်ကို ထည့်သွင်းထားသည်။ node_modules နှင့်ဖိုင်များ .env၊ index.js - ကျွန်ုပ်တို့၏ ပရောဂျက်ကတ်တလောက်မှ အရာအားလုံး-

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ကျွန်ုပ်တို့သည် အမည်ဖြင့် လုပ်ဆောင်ချက်တစ်ခုကို ဖန်တီးသည်... မှန်ကန်သည် - စာပို့ဘယ်ဘက်အညွှန်းမီနူးတွင် ကျွန်ုပ်တို့ထည့်သွင်းပါ။ အယ်ဒီတာလိုအပ်သောအကွက်များကိုဖြည့်ပါ၊ တက်ဘ်သို့ပြောင်းပါ။ စာတိုက်မှတ်တမ်း ကျွန်ုပ်တို့၏ archive ကို download လုပ်ပါ။ mailer.zip:

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ဤနေရာတွင် ဒေါင်းလုဒ်လုပ်ရန် ယခင်ဖော်ပြထားသော ရွေးချယ်မှုဖြစ်သည်။ API သော့ ပရောဂျက်တွင် ဖိုင်တစ်ခုဖန်တီးခြင်းထက် ဤနေရာတွင် တိုက်ရိုက် .envနှင့် package ကိုမတပ်ဆင်ပါနှင့် dotenv. ဒါ​ပေမယ့်​ ကျွန်​​တော်​တို့က ဒါ​တွေအကုန်​လုပ်​ပြီးပြီမို့ သတင်းအချက်အလက်အတွက်​ပဲ ပြတာပါ။ ဆိုလိုသည်မှာ၊ ပွားရန်မလိုအပ်ပါ။

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ယခု ညာဘက်အပေါ်ထောင့်ရှိ ခလုတ်ကို နှိပ်ပါ။ ဗားရှင်းဖန်တီးပါ။ပြီးလျှင် စက္ကန့်အနည်းငယ်စောင့်ပါ။ အားလုံးအဆင်သင့်ဖြစ်သောအခါ၊ ကျွန်ုပ်တို့သည် ကဏ္ဍသို့ အလိုအလျောက်သွားပါမည်။ ယေဘုယျအမြင်. အဲဒီမှာကျနော်တို့ option ကို enable ပါလိမ့်မယ်။ အများသူငှာဆောင်ရွက်ချက်ဒါမှ ပြင်ပကမ္ဘာနဲ့ ထိတွေ့ဆက်ဆံနိုင်မှာပါ။

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ကမ္ပည်းနဲ့ ဆန့်ကျင်ဘက် အပြာရောင် လင့်ခ်ကို သင်တွေ့ရမှာပါ။ ခေါ်ဆိုရန် လင့်ခ်? အဲဒါကိုနှိပ်ပါ။ ဗလာဘရောက်ဆာ ဝင်းဒိုးတစ်ခု ပွင့်လာမည်... သို့သော် စောင့်ပါ - ကျွန်ုပ် အီးမေးလ်တစ်စောင် လက်ခံရရှိသည်-

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ယခု သင်သည် console သို့ပြန်သွားနိုင်သည်။ SendGridခလုတ်ကိုနှိပ်ပါ။ ပေါင်းစည်းမှုကို အတည်ပြုပါ။. စနစ်သည် ၎င်း၏ချန်နယ်များမှတစ်ဆင့် အရာအားလုံးကို စစ်ဆေးမည်ဖြစ်ပြီး ရလဒ်အနေဖြင့် ၎င်းသည် ဤကဲ့သို့သော စခရင်ကို ပြန်ပေးလိမ့်မည်-

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

ဒါပဲ၊ ယောက်ျားလေးတွေ (မိန်းကလေးတွေပေါ့) - အရာအားလုံးဟာ တကယ့်ကို ရိုးရှင်းပြီး အံဝင်ခွင်ကျပါပဲ။ နောက်ထပ် ဆောင်းပါးတွေလည်း ရှိမယ်။ ဤကဲ့သို့သော အကြောင်းအရာများကို စိတ်ဝင်စားသူတိုင်း ဖတ်ချင်ပါက လက်လွတ်မခံရအောင် စာရင်းသွင်းလိုက်ပါ။

4. လှူဒါန်းမှုများ

Yandex လုပ်ဆောင်ချက်များသည် mail ပေးပို့သည်။

source: www.habr.com

DDoS ကာကွယ်ရေး၊ VPS VDS ဆာဗာများပါသည့် ဆိုက်များအတွက် ယုံကြည်စိတ်ချရသော hosting ကို ဝယ်ယူပါ။ 🔥 DDoS ကာကွယ်မှု၊ VPS VDS ဆာဗာများပါရှိသော ယုံကြည်စိတ်ချရသော ဝဘ်ဆိုက် hosting ကို ဝယ်ယူပါ | ProHoster