如何让我的 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 的端点的主要内容,如果未能解决你的问题,请参考以下文章
如何让我的客户端应用程序名称显示在 java 的 zos 上?
如何让机器人响应/响应 slack 中传入的 webhook 消息?