Spre deosebire de sistemele tradiționale în care un sistem (subiect) continuă să interogheze un alt sistem (observator) pentru anumite date, webhook-urile permit observatorului să introducă automat datele în sistemul subiectului ori de câte ori are loc un eveniment.
Acest lucru elimină necesitatea monitorizării constante de către subiect. Webhook-urile funcționează în întregime pe Internet și, prin urmare, toată comunicarea între sisteme trebuie să aibă loc sub formă de mesaje HTTP.
Webhook-urile se bazează pe prezența URL-urilor statice care indică API-uri în sistemul subiectului care trebuie notificate atunci când are loc un eveniment în sistemul observatorului. Un exemplu în acest sens ar fi o aplicație web concepută pentru a colecta și gestiona toate comenzile plasate pe contul Amazon al unui utilizator. În acest scenariu, Amazon acționează ca observator, iar aplicația web Custom Order Management acționează ca subiect.
În loc ca aplicația web personalizată să apeleze periodic API-urile Amazon pentru a verifica o comandă creată, un webhook creat în aplicația web personalizată ar permite Amazon să trimită automat o comandă nou creată în aplicația web printr-o adresă URL înregistrată. Prin urmare, pentru a permite utilizarea webhook-urilor, subiectul trebuie să aibă adrese URL desemnate care acceptă notificări de evenimente de la observator. Acest lucru reduce o încărcare semnificativă a obiectului, deoarece apelurile HTTP sunt efectuate între cele două părți numai atunci când are loc un eveniment.
Odată ce webhook-ul subiectului este apelat de către observator, subiectul poate lua măsurile corespunzătoare cu aceste date nou trimise. De obicei, webhook-urile se fac prin solicitări POST către o anumită adresă URL. Solicitările POST vă permit să trimiteți informații suplimentare obiectului. În plus, poate fi folosit și pentru a identifica între o serie de evenimente posibile, în loc să creeze adrese URL webhook separate pentru fiecare eveniment.
Pentru a implementa webhook-uri de intrare în aplicația dvs., trebuie să efectuați următorii pași de bază:
Atât webhook-urile, cât și API-urile au scopul de a stabili comunicarea între aplicații. Cu toate acestea, există câteva avantaje și dezavantaje distincte ale utilizării Webhook-urilor față de API-uri pentru a realiza integrarea aplicației.
Webhook-urile tind să fie soluții mai bune dacă următoarele puncte sunt mai relevante pentru sistemul implementat:
Utilizarea API-ului ar trebui să fie preferată față de webhook-uri în alte situații.
Lucrurile importante de luat în considerare pentru utilizarea API-urilor pe Webhooks sunt:
Pentru a face față posibilității de a pierde datele trimise de la un server atunci când webhook-ul este offline, puteți utiliza o coadă de mesaje pentru evenimente pentru a arhiva apelurile respective. Exemple de platforme care oferă o astfel de funcționalitate includ Iepure MQ o Serviciul Simple Queue Service (SQS) de la Amazon. Ambele sunt concepute pentru a acționa ca facilități intermediare de stocare a mesajelor care evită posibilitatea de a pierde un apel webhook.
Ercole Palmeri
Sectorul naval este o adevărată putere economică globală, care a navigat către o piață de 150 de miliarde...
Luni trecută, Financial Times a anunțat un acord cu OpenAI. FT își licențiază jurnalismul de clasă mondială...
Milioane de oameni plătesc pentru serviciile de streaming, plătind taxe lunare de abonament. Este o părere comună că tu...
Coveware de la Veeam va continua să ofere servicii de răspuns la incidente de extorcare cibernetică. Coveware va oferi capacități criminalistice și de remediere...