A diferenza dos sistemas tradicionais nos que un sistema (suxeito) segue consultando outro sistema (observador) para obter algúns datos, os webhooks permiten que o observador introduza automaticamente os datos no sistema do suxeito sempre que ocorre un evento.
Isto elimina a necesidade dun seguimento constante por parte do suxeito. Os webhooks funcionan totalmente en Internet e, polo tanto, toda comunicación entre sistemas debe realizarse en forma de mensaxes HTTP.
Os webhooks dependen da presenza de URL estáticos que apuntan a API do sistema do suxeito que deben ser notificados cando se produce un evento no sistema do observador. Un exemplo disto sería unha aplicación web deseñada para recoller e xestionar todos os pedidos realizados na conta de Amazon dun usuario. Neste escenario, Amazon actúa como observador e a aplicación web de xestión de pedidos personalizados actúa como suxeito.
En lugar de que a aplicación web personalizada chame periodicamente ás API de Amazon para comprobar se se creou un pedido, un webhook creado na aplicación web personalizada permitiría a Amazon enviar automaticamente un pedido recentemente creado na aplicación web a través dun URL rexistrado. Polo tanto, para habilitar o uso de webhooks, o suxeito debe ter URL designados que acepten notificacións de eventos do observador. Isto reduce unha carga significativa no obxecto xa que as chamadas HTTP realízanse entre as dúas partes só cando se produce un evento.
Unha vez que o observador chame o webhook do suxeito, o suxeito pode tomar as medidas oportunas con estes datos recentemente enviados. Normalmente, os webhooks realízanse mediante solicitudes POST a un URL específico. As solicitudes POST permítenche enviar información adicional ao obxecto. Ademais, tamén se pode usar para identificar entre varios eventos posibles en lugar de crear URL de webhook separados para cada evento.
Para implementar webhooks de entrada na súa aplicación, cómpre realizar os seguintes pasos básicos:
Tanto os webhooks como as API teñen como obxectivo establecer comunicación entre aplicacións. Non obstante, hai algunhas vantaxes e desvantaxes distintas de usar Webhooks fronte ás API para lograr a integración das aplicacións.
Os webhooks adoitan ser mellores solucións se os seguintes puntos son máis relevantes para o sistema implementado:
O uso da API debería ser preferido sobre os webhooks noutras situacións.
As cousas importantes a ter en conta para usar API en Webhooks son:
Para xestionar a posibilidade de perder os datos enviados desde un servidor cando o webhook queda sen conexión, podes usar unha cola de mensaxes de eventos para arquivar esas chamadas. Exemplos de plataformas que ofrecen tal funcionalidade inclúen CoelloMQ o Servizo de cola simple (SQS) de Amazon. Ambos están deseñados para actuar como intermediarios de almacenamento de mensaxes que evitan a posibilidade de perder unha chamada webhook.
Ercole Palmeri
O sector naval é unha verdadeira potencia económica mundial, que navega cara a un mercado de 150 millóns...
O pasado luns, o Financial Times anunciou un acordo con OpenAI. FT licencia o seu xornalismo de clase mundial...
Millóns de persoas pagan por servizos de streaming, pagando taxas de subscrición mensuais. É unha opinión común que vostede...
Coveware by Veeam continuará ofrecendo servizos de resposta a incidentes de extorsión cibernética. Coveware ofrecerá capacidades forenses e de remediación...