本文介绍了QuickNode Webhooks,一种实时区块链事件传递服务,可以将过滤后的链上数据直接发送到HTTP端点。它简化了获取所需数据的过程,无需轮询或构建复杂的基础设施。文章详细说明了如何创建并测试第一个Webhook,以及Webhooks相对于QuickAlerts的优势。
QuickNode Webhooks 是一种实时区块链事件传递服务,可将过滤后的链上数据直接发送到你的 HTTP 端点。 它可以轻松获取你关心的代币转账或合约事件之类的数据,而无需不断轮询或构建复杂的基础设施。
本指南将引导你创建和测试你的第一个 webhook。如果你目前正在使用 QuickAlerts,本指南还将重点介绍迁移到 Webhooks 以获得更高灵活性和可靠性的好处。
Webhooks 是一种简单而强大的产品,使你能够接收链上事件的实时通知,并具有高级过滤、压缩和交付保证。 它使用实时区块链数据,应用你在 UI 中定义的过滤器,然后将每个匹配的事件 POST 到你提供的 URL。
Webhooks 构建在为企业应用程序提供支持的相同强大基础设施之上,仅公开基本配置来简化体验,使其非常适合需要实时数据而无需复杂基础设施要求的开发人员。
Webhooks 非常适合构建:
Webhooks 保留了你在 QuickAlerts 中重视的一切,但具有更简化的体验和增强的功能。以下是不同和改进的地方:
特性 | Webhooks | QuickAlerts |
---|---|---|
过滤 | 具有简化 UI 的高级过滤功能(通过模板和自定义过滤器) | 仅限于事件条件 |
交付保证 | 具有重试的保证交付 | 尽力交付 |
多链支持 | Solana、Bitcoin 和不断扩展的 EVM 链 _( 查看完整列表)_ | 36 条链 |
成本 | 按警报付费,比 QuickAlerts 便宜 55% 以上 | 按警报付费 |
重组处理 | 自动重组处理以实现数据一致性 | 不适用 |
**延迟/吞吐量 | 更低的 延迟 和更高的吞吐量 | 低 延迟 和高吞吐量 |
压缩 | 支持 gzip 压缩以减小 payload 大小 | 不适用 |
升级路径 | 轻松将 webhooks 转换为完整的 Streams pipelines 以用于高级用例 | 不适用 |
设置 webhook 是一个简单的过程。 以下是如何开始:
登录到你的 QuickNode 帐户 并导航到你仪表板中的 Webhooks 部分。 如果你还没有帐户,你可以在 这里 注册一个。
单击 Create Webhook 以启动引导式向导以立即开始。 该向导将指导你完成设置 webhook 的过程,从选择你的网络到定义你的过滤器和目标 URL。
选择你要监控的区块链网络。 这是告诉 Webhooks 在哪里侦听事件的第一步。
接下来,你将定义要接收的事件类型。 你有两个主要选项:
在本指南中,我们将使用 Ethereum Mainnet 上的 Wallet transfers 模板作为一个示例,以便在特定钱包地址(例如,0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
,即 Vitalik Buterin 的钱包)发生跨 ETH、ERC-20 和 ERC-721 转移 的新活动时收到警报。
需要过滤方面的帮助吗?
访问我们的 过滤器 文档或 Streams 指南 以了解有关高级过滤器的更多信息。
在激活 webhook 之前,测试你的过滤器以确保它正常工作并捕获你打算捕获的事件至关重要。 要测试你的过滤器:
输入你要接收 payload 的 URL。 QuickNode 会将 POST 请求发送到此 URL。 Payload 格式将与你在测试 payload 中看到的格式相同,因此你可以在服务器上轻松解析它。
在本指南中,我们将使用 TypedWebhook 轻松测试我们的配置。 TypedWebhook 是一项免费服务,可为你提供一个 URL 来发送测试 payload。 按照以下步骤进行设置:
如果你需要一个示例代码来构建你自己的服务器,请查看我们的 Visualizing Real-Time Blockchain Data With Streams and React 指南中的“使用 Express.js 设置后端服务器”部分。
获得成功响应后,你可以创建你的 webhook。 但是,在继续之前,让我们探索一些你可以配置的其他选项。
每个 webhook 都有一个验证Token,你可以使用它来验证 webhook 的真实性。 此Token会自动生成,可以在 Webhooks 仪表板中找到。 通过使用验证Token,你可以验证传入的 webhook 消息并确保它们源自你的 webhook。
查看 How to Validate Incoming Streams Webhook Messages 指南以获取更多详细信息。
QuickNode Webhooks 提供了一个压缩选项来优化你的数据交付。 你可以选择使用 gzip 压缩 payload 以减小其大小。
虽然 Webhooks 的成本基于收到的警报数量,但使用压缩仍然可以为你的基础设施带来好处。 更小的 payload 大小会导致:
最后,给你的 webhook 起一个描述性名称,以便稍后识别它,然后单击按钮以创建你的 webhook。 你的 webhook 现在将处于活动状态,并在满足你的条件过滤器时将实时数据流式传输到你指定的 URL。
恭喜! 你已成功设置你的第一个 QuickNode Webhook,使你能够轻松接收实时区块链数据。 Webhooks 提供了一种强大而简化的方式,可将链上事件直接集成到你的应用程序中。
如果你有任何问题,请随时使用我们在 Discord 上的专用频道,或使用下面的表格提供反馈。 通过在 X 和我们的 Telegram 公告频道 上关注我们,及时了解最新信息。
如果你有任何反馈或对新主题的请求,请告诉我们。 我们很乐意听取你的意见。
- 原文链接: quicknode.com/guides/qui...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!