Հոդվածներ

Ի՞նչ է webhook-ը և ինչպե՞ս եք այն օգտագործում:

Webhooks-ը թույլ է տալիս վեբ-հավելվածներին փոխազդել հատուկ հետադարձ զանգերի օգտագործման միջոցով:

Webhooks-ի օգտագործումը թույլ է տալիս վեբ հավելվածներին ավտոմատ կերպով հաղորդակցվել այլ վեբ հավելվածների հետ:

Ի տարբերություն ավանդական համակարգերի, որտեղ մի համակարգը (առարկա) շարունակում է հարցումներ կատարել մեկ այլ համակարգից (դիտորդից) որոշ տվյալների համար, վեբ-կեռիկներ դիտորդին թույլ են տալիս ավտոմատ կերպով տվյալներ ուղարկել առարկայի համակարգ, երբ որևէ իրադարձություն է տեղի ունենում:

Սա վերացնում է սուբյեկտի կողմից մշտական ​​մոնիտորինգի անհրաժեշտությունը: Վեբ-կեռիկներն ամբողջությամբ գործում են ինտերնետում և, հետևաբար, համակարգերի միջև ողջ հաղորդակցությունը պետք է տեղի ունենա HTTP հաղորդագրությունների տեսքով:

Օգտագործելով վեբ-կեռիկներ

Վեբ-կեռիկներն ապավինում են ստատիկ URL-ների առկայությանը, որոնք մատնացույց են անում առարկայի համակարգում API-ներին, որոնք պետք է ծանուցվեն, երբ դիտորդի համակարգում իրադարձություն է տեղի ունենում: Դրա օրինակը կլինի վեբ հավելվածը, որը նախատեսված է հավաքելու և կառավարելու օգտատիրոջ Amazon հաշվում տեղադրված բոլոր պատվերները: Այս սցենարում Amazon-ը հանդես է գալիս որպես դիտորդ, իսկ Custom Order Management Webapp-ը՝ որպես առարկա:

Պատվերով վեբ հավելվածը պարբերաբար զանգահարելու Amazon API-ներ՝ ստեղծված պատվերի առկայությունը ստուգելու համար, հատուկ վեբ հավելվածում ստեղծված վեբ-կապը թույլ կտա Amazon-ին ավտոմատ կերպով ներկայացնել վեբ հավելվածում նոր ստեղծված պատվերը գրանցված URL-ի միջոցով: Հետևաբար, վեբ-կեռիկների օգտագործումը հնարավոր դարձնելու համար սուբյեկտը պետք է ունենա նշանակված URL-ներ, որոնք ընդունում են իրադարձությունների ծանուցումները դիտորդից: Սա նվազեցնում է օբյեկտի վրա զգալի բեռը, քանի որ HTTP զանգերը կատարվում են երկու կողմերի միջև միայն այն դեպքում, երբ տեղի է ունենում իրադարձություն:

Հարցումների վրա հիմնված համակարգեր ընդդեմ վեբ-կապիկների վրա հիմնված համակարգերի

Երբ դիտորդի կողմից կանչվի առարկայի վեբ-կեռիկը, սուբյեկտը կարող է համապատասխան գործողություն կատարել այս նոր ներկայացված տվյալների հետ: Սովորաբար, վեբ-կեռիկներն արվում են POST հարցումների միջոցով կոնկրետ URL-ով: POST հարցումները թույլ են տալիս լրացուցիչ տեղեկություններ ուղարկել օբյեկտին: Բացի այդ, այն կարող է օգտագործվել նաև տարբեր հնարավոր իրադարձությունների միջև նույնականացման համար՝ յուրաքանչյուր իրադարձության համար առանձին webhook URL-ներ ստեղծելու փոխարեն:

Webhook աշխատանքային հոսք

Ձեր հավելվածում ներգնա վեբ-կեռիկներ իրականացնելու համար դուք պետք է կատարեք հետևյալ հիմնական քայլերը.

  • Բացահայտեք API-ի վերջնակետը ձեր հավելվածի սերվերում, որն ընդունում և մշակում է HTTP POST զանգերը
  • Տրամադրեք մուտք դեպի այս վերջնակետ վեբ-կապիկի պոտենցիալ օգտվողների համար: API-ի վերջնակետը կկանչի տվյալների աղբյուրի հավելված, երբ համապատասխան պայմանները բավարարվեն:
  • Մշակեք POST-ի տվյալները և պատասխան վերադարձրեք webhook զանգի նախաձեռնողին՝ կարգավիճակը նշելու համար: Այս քայլը կարող է լինել կամ չլինել:

Webhooks ընդդեմ API-ների

Ե՛վ վեբկեռիկները, և՛ API-ները նպատակ ունեն կապ հաստատել հավելվածների միջև: Այնուամենայնիվ, կան որոշ հստակ առավելություններ և թերություններ API-ների նկատմամբ Webhooks-ի օգտագործման մեջ՝ հավելվածների ինտեգրմանը հասնելու համար:

Նորարարության տեղեկագիր
Բաց մի թողեք նորարարության մասին ամենակարևոր նորությունները: Գրանցվեք դրանք էլփոստով ստանալու համար:

Webhooks-ը հակված է ավելի լավ լուծումներ լինել, եթե հետևյալ կետերն ավելի համապատասխան են ներդրված համակարգին.

  • Եթե ​​տվյալները հաճախ թարմացվում են սերվերում, վեբ-կեռիկներն ավելի լավ լուծումներ են, քանի որ հաճախորդից դեպի սերվեր API-ի անհարկի զանգերը վերացվում են: Ըստ resthooks.com-ի՝ API-ի հարցումների 98,5%-ը գնում է անիմաստ:
  • Webhook-ները հնարավորություն են տալիս ավելի լավ լուծումներ գտնել համակարգերի համար, որոնք պահանջում են տվյալների գրեթե իրական ժամանակում թարմացումներ: API հարցումները սովորաբար աշխատում են սահմանված ընդմիջումներով, ինչը կարող է կանխել իրական ժամանակի տվյալների թարմացումը: Webhook-ի դեպքում թարմացումները սերվերից ուղարկվում են հաճախորդին, հենց որ վեբ-կեռիկը գործարկվի:

API-ի օգտագործումը պետք է նախընտրելի լինի որոշ այլ իրավիճակներում վեբ-կեռիկների նկատմամբ:

Հաշվի առնելու բաներ

Webhooks-ում API-ներ օգտագործելու համար անհրաժեշտ է հաշվի առնել հետևյալը.

  • API-ի օգտագործումը թույլ է տալիս ավելի հարմարեցնել, թե երբ պետք է հարցում կատարվի սերվերից ստացված տվյալների համար, ինչպես նաև, թե որքան տվյալներ պետք է հավաքվեն սերվերից: Հարցման ենթակա տվյալների քանակը կարգավորվում է API հարցման չափով: Webhooks-ի միջոցով սերվերը հիմնականում որոշում է տվյալները և երբ դրանք ուղարկվեն:
  • Խիստ փոփոխական տվյալներ ունեցող համակարգերի համար (օրինակ՝ իրական ժամանակի համակարգերը, IoT համակարգերը և այլն), API-ի վրա հիմնված հարցումը կարող է ավելի լավ տարբերակ լինել, քանի որ յուրաքանչյուր API զանգի դեպքում օգտագործելի պատասխանների մեծ հավանականություն կա:
  • Հնարավոր է, որ սերվերից ուղարկված տվյալները վեբ-կապիկի միջոցով ամբողջությամբ անտեսվեն հաճախորդի կողմից, եթե REST վերջնակետերը անցանց են: Այն դեպքում, երբ սերվերը չունի նման անհաջող հրումներ կրկնելու մեխանիզմ, տվյալների թարմացումներն ամբողջությամբ կկորչեն:

Որպեսզի կարողանաք կորցնել սերվերից ուղարկված տվյալները, երբ webhook-ն անցանց է, դուք կարող եք օգտագործել իրադարձությունների հաղորդագրությունների հերթը՝ այդ զանգերն արխիվացնելու համար: Նման ֆունկցիոնալություն ապահովող հարթակների օրինակները ներառում են Rabbit MQ o Amazon-ի պարզ հերթերի ծառայություն (SQS): Երկուսն էլ նախագծված են որպես միջնորդ հաղորդագրությունների պահպանման միջոցներ, որոնք խուսափում են webhook զանգը բաց թողնելու հնարավորությունից:

Ercole Palmeri

Նորարարության տեղեկագիր
Բաց մի թողեք նորարարության մասին ամենակարևոր նորությունները: Գրանցվեք դրանք էլփոստով ստանալու համար:

Վերջին հոդվածները

Veeam-ն ունի ամենաընդգրկուն աջակցություն փրկագինին՝ պաշտպանությունից մինչև պատասխան և վերականգնում

Veeam-ի Coveware-ը կշարունակի տրամադրել կիբեր շորթման միջադեպերի արձագանքման ծառայություններ: Coveware-ը կառաջարկի դատաբժշկական և վերականգնման հնարավորություններ…

23 Ապրիլ 2024

Կանաչ և թվային հեղափոխություն. Ինչպես է կանխատեսելի սպասարկումը փոխակերպում նավթի և գազի արդյունաբերությունը

Կանխատեսելի սպասարկումը հեղափոխություն է անում նավթի և գազի ոլորտում՝ կայանի կառավարման նորարարական և ակտիվ մոտեցմամբ:…

22 Ապրիլ 2024

Մեծ Բրիտանիայի հակամենաշնորհային կարգավորիչը բարձրացնում է BigTech-ի ահազանգը GenAI-ի վերաբերյալ

Մեծ Բրիտանիայի CMA-ն նախազգուշացում է տարածել արհեստական ​​ինտելեկտի շուկայում Big Tech-ի վարքագծի վերաբերյալ: Այնտեղ…

18 Ապրիլ 2024

Casa Green. էներգետիկ հեղափոխություն կայուն ապագայի համար Իտալիայում

Շենքերի էներգաարդյունավետության բարձրացման նպատակով Եվրոպական միության կողմից ձևակերպված «Քեյս Գրին» հրամանագիրը իր օրենսդրական գործընթացն ավարտել է…

18 Ապրիլ 2024

Կարդացեք նորարարությունը ձեր լեզվով

Նորարարության տեղեկագիր
Բաց մի թողեք նորարարության մասին ամենակարևոր նորությունները: Գրանցվեք դրանք էլփոստով ստանալու համար:

Հետեւեք մեզ