如何从第三方服务接收webhook信号

时间:2015-02-10 16:39:39

标签: api webhooks zapier

我正在使用SaaS进行AWS实例监控,使用Mandrill进行电子邮件发送/广告系列。

我用 Zapier 创建了一个简单的图表,但我更愿意自己托管它。所以我的问题是:

如何从Mandrill接收webhook信号,然后从我的服务器发送到Datadog?然后我想再次将这个脚本托管在我正在监控的同一台服务器上将是一个糟糕的主意...

基本上我不知道如何“接收webhook”,所以我可以将它报告给我的Datadog服务代理,以便在他们的网站上更新。

我知道如何实际向Datadog报告数据,如http://docs.datadoghq.com/api/所述,但我只是没有线索 如何托管Web挂钩的监听器

编程语言并不重要,我不喜欢这种情况。

3 个答案:

答案 0 :(得分:1)

您可以在此处找到如何在您的mandrill帐户中添加新的webhook:https://mandrillapp.com/api/docs/webhooks.php.html#method=add

主要的是这里: $url = 'http://example/webhook-url'; 这是您的webhook URL,它将处理mandrill发送的数据并将信息转发给Datadog。

这是关于mandrill将发送到您的webhook网址的说明:http://help.mandrill.com/entries/21738186-Introduction-to-Webhooks

答案 1 :(得分:1)

webhooks的监听器就是一个网站/应用程序,如果请求进来,它会触发一个动作。通常你会保密或用(http basic)身份验证来保护它。例如。创建一个名为http://yourdomain.com/hooklistener.php的网站。然后,您可以使用HTTP POST或GET调用它,并传递一些数据,如hooklistener.php?event = triggerDataDog或POST,并与正文一起发送数据。然后运行脚本或任何您想要处理该事件的内容。

答案 2 :(得分:0)

“侦听器”只是您托管的任何URL,您可以在其中接收发布到其中的数据。请记住,既然你提到了Zapier,你可以设置一个接收webhook数据的触发器 - 在这种情况下,监听器URL由Zapier提供,然后你可以将该数据发送到任何应用程序(甚至发布到另一个webhook) 。使用Zapier很好,因为它不需要你编写接收钩子数据的侦听器代码并用它做一些事情。