Webhook
Un webhook è una notifica di evento trasmessa tramite HTTP, lo stesso protocollo utilizzato per trasferire i dati di una pagina web. Viene generalmente inviato come richiesta POST, che contiene dati "pubblicati" a uno specifico URL. L'URL definisce la posizione di uno script, che elabora i dati contenuti nella richiesta POST.
I webhook possono essere integrati in qualsiasi applicazione, comprese le app web, le app mobili e le applicazioni software per computer desktop. È possibile programmare eventi specifici per generare webhook, o "callback HTTP", cioè notifiche di eventi inviate tramite HTTP. I dati possono essere formattati nel modo scelto dallo sviluppatore, anche se vengono comunemente utilizzati i formati JSON e XML.
I dati POST, inviati a uno specifico URL, vengono analizzati dallo script corrispondente su un server web. Lo script può essere scritto in uno dei diversi linguaggi di scripting lato server, come PHP, JSP o C#. Può eseguire una o più azioni, come salvare i dati in un database, inviare le informazioni tramite email a un indirizzo specifico oppure inviare nuovi dati alla fonte.
I webhook vengono utilizzati per un'ampia varietà di scopi. Tra gli esempi vi sono la notifica alle aziende delle vendite, l'attivazione e la disattivazione di programmi software, l'aggiornamento delle informazioni sui clienti e la notifica agli sviluppatori degli arresti anomali del software. Alcuni siti web forniscono persino API che consentono agli utenti di inviare dati a un URL quando si verificano eventi specifici. GitHub, per esempio, fornisce un elenco di eventi che possono attivare un webhook, che gli sviluppatori possono utilizzare per tenere traccia delle modifiche ai progetti archiviati nel loro repository online.
Sebbene i webhook siano uno strumento efficace, per funzionare richiedono una connessione Internet tra la fonte dei dati e il server web. Inoltre, sul server deve essere presente uno script all'URL di destinazione e lo script deve essere in grado di riconoscere e analizzare i dati POST. Se la connessione Internet o lo script non sono disponibili, il webhook non funzionerà.
Metti alla prova le tue conoscenze