如何让我的 java 应用程序作为 webhook 的端点

Posted

技术标签:

【中文标题】如何让我的 java 应用程序作为 webhook 的端点【英文标题】:How to have my java application as an endpoint for webhook 【发布时间】:2019-05-05 15:37:45 【问题描述】:

我正在开发一个不和谐的机器人,它将 rss 消息发布到频道。我目前有这个:

    新项目发布在 rss 提要中 Zapier 收到 rss 提要的通知 Zapier 向我的 java 应用程序发送一个 webhook 我的应用程序收到消息 应用程序进行一些处理并将其发送到 discord

但是,我现在卡在第 4 步。我想我应该让我的 java 监听 zappier 的 webhook url,但我不知道如何制作这个端点。

我希望有人可以帮助我。

附:如果我的想法很愚蠢,或者有人知道将 rss 消息发送到我的应用程序的另一种方式,请告诉我。

【问题讨论】:

当你设置 webhook 时,zapier 会向你发送 json 信息吗? 是的,据我了解,它以 json 格式发送 POST 请求,但也支持其他有效负载类型 【参考方案1】:

老实说,直到现在我还没有使用 Zapier,但基于 cmets,我相信这个答案将帮助您明白重点并确保编写应用程序,因为它们在概念上是相同的。

最近我开发了一个具有相同行为的电报机器人。它有指向我定义的 url 的 webhook,然后它将所有更新作为 json 推送到我的 URL。

为了获取这些类型的数据并在我们的应用程序中使用它们,我们应该遵循以下程序:

    使用可以接收 json 对象的 url 端点创建一个 web-app 将您的 zapier webhook 设置为准确指向该 URL 如果您使用 java 作为您的网络应用程序,您应该有一个像 Jackson,GSon 这样的库来将您的数据转换为您制作的相应 Java Bean/POJO。 在您的应用程序中使用该对象

要创建 POJO 对象,您应该考虑 json 结构,并在此基础上创建用于绑定的 Java Bean 类。参考这个例子 -> How to convert Java object to / from JSON (Jackson)

注意一些框架,例如它们集成的 Spring-MVC 像杰克逊这样的图书馆,他们为你做所有的绑定工作 自动。

【讨论】:

【参考方案2】:

David 来自 Zapier 平台团队。

我只是想提一下,如果您只想从 RSS 发送消息 -> Discord,则无需为此开发自己的应用程序(除非您愿意,在这种情况下,您可以拥有强大的力量! )。

您可以在此处找到该 Zap 的蓝图:https://zapier.com/apps/discord/integrations/rss/25366/post-new-rss-items-to-a-discord-channel

​如果您还有其他问题,请告诉我!

【讨论】:

啊不知道。谢谢!但是,我试图让它成为我的机器人的功能之一。我设法通过spring设置了一个webapp来解决它。然后 zapier 完成我需要的其余部分 :)

以上是关于如何让我的 java 应用程序作为 webhook 的端点的主要内容,如果未能解决你的问题,请参考以下文章

如何通过传出 webhook 接收交互?

如何让我的客户端应用程序名称显示在 java 的 zos 上?

如何让机器人响应/响应 slack 中传入的 webhook 消息?

Slack Incoming Webhook 作为我的用户发送

如何将 webhook 与 paypal 退货请求集成

使用 webhook 在 twilio 中触发获取请求