A diferència dels sistemes tradicionals on un sistema (subjecte) segueix sondejant un altre sistema (observador) per obtenir algunes dades, els webhooks permeten que l'observador introdueixi automàticament les dades al sistema del subjecte sempre que es produeixi un esdeveniment.
Això elimina la necessitat d'un seguiment constant per part del subjecte. Els webhooks funcionen completament a Internet i, per tant, tota comunicació entre sistemes s'ha de fer en forma de missatges HTTP.
Els webhooks es basen en la presència d'URL estàtics que apunten a API del sistema del subjecte que s'han de notificar quan es produeix un esdeveniment al sistema de l'observador. Un exemple d'això seria una aplicació web dissenyada per recollir i gestionar totes les comandes realitzades al compte d'Amazon d'un usuari. En aquest escenari, Amazon actua com a observador i l'aplicació web Custom Order Management actua com a subjecte.
En lloc de fer que l'aplicació web personalitzada truqui periòdicament a les API d'Amazon per comprovar si s'ha creat una comanda, un webhook creat a l'aplicació web personalitzada permetria a Amazon enviar automàticament una comanda acabada de crear a l'aplicació web mitjançant un URL registrat. Per tant, per permetre l'ús de webhooks, el subjecte ha de tenir URL designats que acceptin notificacions d'esdeveniments de l'observador. Això redueix una càrrega important a l'objecte, ja que les trucades HTTP es fan entre les dues parts només quan es produeix un esdeveniment.
Un cop l'observador crida al webhook del subjecte, el subjecte pot prendre l'acció adequada amb aquestes dades recentment enviades. Normalment, els webhooks es fan mitjançant sol·licituds POST a un URL específic. Les sol·licituds POST us permeten enviar informació addicional a l'objecte. A més, també es pot utilitzar per identificar entre diversos esdeveniments possibles en lloc de crear URL de webhook separats per a cada esdeveniment.
Per implementar webhooks entrants a la vostra aplicació, heu de realitzar els passos bàsics següents:
Tant els webhooks com les API tenen l'objectiu d'establir comunicació entre aplicacions. Tanmateix, hi ha alguns avantatges i desavantatges diferents d'utilitzar Webhooks sobre les API per aconseguir la integració d'aplicacions.
Els webhooks solen ser millors solucions si els punts següents són més rellevants per al sistema implementat:
S'hauria de preferir l'ús de l'API sobre els webhooks en algunes altres situacions.
Els aspectes importants a tenir en compte per utilitzar les API als Webhooks són:
Per fer front a la possibilitat de perdre dades enviades des d'un servidor quan el webhook es desconnecta, podeu utilitzar una cua de missatgeria d'esdeveniments per arxivar aquestes trucades. Alguns exemples de plataformes que proporcionen aquesta funcionalitat inclouen ConillMQ o Servei de cua simple (SQS) d'Amazon. Tots dos estan dissenyats per actuar com a instal·lacions d'emmagatzematge de missatgeria intermediaris que eviten la possibilitat de perdre's una trucada webhook.
Ercole Palmeri
Es va realitzar una operació d'oftalmoplàstia amb el visualitzador comercial Apple Vision Pro a la Policlínica de Catània...
El desenvolupament de la motricitat fina a través del color prepara els nens per a habilitats més complexes com escriure. Per acolorir...
El sector naval és una veritable potència econòmica mundial, que ha navegat cap a un mercat de 150 milions...
Dilluns passat, el Financial Times va anunciar un acord amb OpenAI. FT autoritza el seu periodisme de classe mundial...