GTokenTool全网最好的代币发行工具平台
当前位置:首页 >> 加密百科 >> 如何监控所有 ETH 转账交易

如何监控所有 ETH 转账交易

admin 加密百科 43

您是否一直在寻找一种简单的解决方案来监控所有 ETH 转账交易?如果是这样,您来对地方了!借助 Moralis Streams API,您可以轻松监控 ETH 交易,并且可以通过 Moralis 的用户友好型 UI 或 SDK 进行监控。更重要的是,即使您选择 SDK 路径,也只需设置几行代码即可完成工作!例如,这些是使用 JavaScript 时要使用的代码片段:

const newStream = await Moralis.Streams.add ( options )
const { id } = newStream.toJSON ( ) ;
const地址=”wallet_address_you_want_to_track”
等待Moralis。Streams。addAddress { address id }

教程:如何使用 Moralis Streams API 监控所有 ETH 转账交易

无论您计划使用 Moralis 的管理 UI 还是 SDK,您都需要一个有效的 Moralis 帐户。因此,在继续之前,请确保创建您的免费 Moralis 帐户。只需单击上一句中的链接或点击 Moralis 网站顶部菜单最右侧的“免费开始”按钮:


开始免费监控所有 ETH 转账交易 - Moralis 注册按钮


此外,为了本教程的目的,我们将重点介绍 Polygon 测试网。但是,如果您专注于以太坊主网或任何其他与 EVM 兼容的链,原理是相同的。话虽如此,如果您希望跟随我们的脚步,请务必使用Moralis Pure Faucets页面上等待您的Polygon Mumbai 水龙头获取一些“测试”MATIC 。 

注意:您可以自由选择其他链。但我们强烈建议您先从测试网开始。 

使用 Moralis Admin UI 跟踪 ETH 转移 – 入门

在您的 Moralis 帐户启动并运行后,您将能够访问您的管理区域。您可以随意从内部等待您的“入门”教程开始。或者,只需点击“创建项目”按钮并为您的项目命名:


“创建项目”按钮


创建项目后,您可以专注于“如何监控所有 ETH 转账交易”挑战。为此,请从侧面菜单中选择 Streams 选项,然后单击两个“创建新 Stream”按钮之一:


点击两个“创建新流”按钮之一


接下来,您必须输入要监控的以太坊地址。这可以是钱包地址或代币智能合约地址。为了本教程的目的,我们将重点介绍钱包跟踪。因此,请随意使用您想要的任何钱包地址。 

但是,出于教育和测试目的,使用您控制的钱包地址是最佳选择。因此,如果您使用 MetaMask,只需复制您的地址即可。

要继续,只需将地址粘贴到“将 EVM/Aptos 地址添加到流”输入字段中:


“将 EVM/Aptos 地址添加到流”输入字段


只要您将地址粘贴到指定字段中,UI 就会自动向您显示流配置选项。

流设置

如下图所示,您可以在“演示”和“生产”之间切换,还有其他选项。一旦您准备好将此功能用于生产目的,您将需要切换到“生产”。但是,为了本教程的目的,请坚持使用“演示”:


在“演示”和“产品”之间切换


查看上面的屏幕截图,您还会看到“Webhook URL”、“说明”和“标签”输入字段。出于演示目的,您无需提供 webhook URL。至于说明和标签字段,您可以使用默认选项。 

继续向下滚动,您将看到“选择网络”部分。在这里,您可以切换要关注的所有网络旁边的按钮。但是,如前所述,为了本教程的目的,我们将重点关注 Polygon 的测试网(孟买):  


“选择网络”部分包含所有支持的网络


选择要关注的网络后,您可以继续进行流设置过程的第四步。同样,您有多种选择: 


关注合同互动


如上图所示,我们决定专注于合约交互,因为我们将进行 ERC-20 转账示例。但是,如果您要直接解决“如何监控所有 ETH 转账交易”任务,则需要在步骤三中选择以太坊,并在步骤四中勾选“原生交易”框。 

进一步向下滚动流设置,您还会看到“高级选项”和“触发器”部分。前者允许您使用智能合约的 ABI 进一步过滤监控议程,以定位特定的智能合约功能。

至于 Moralis 触发器,您可以运行只读智能合约函数。这样,您就可以从这些函数中获得结果,作为Web3 webhook的一部分。

查看结果 – 示例交易

无需任何特殊调整,您已经可以看到新流的强大功能。以下是我们在孟买测试网上的 Chainlink (LINK) 代币交易示例:


孟买测试网上 Chainlink (LINK) 代币交易示例


我们的演示流立即检测到上述示例交易:


演示流立即检测到上述示例交易


为了体验这个神奇工具的强大功能,我们鼓励您运行自己的示例交易。然后,您将看到此类监控提供的所有相关链上数据(见上面的屏幕截图),包括交易哈希、事件涉及的智能合约、“发件人”和“收件人”地址、转移的价值等等。 

本质上,设置 Moralis 流为您提供了一个强大的检测器来发现链上事件。而且,当任何事件发生时,您不仅可以检测到它们,还可以获得相关详细信息。因此,您可以轻松利用这些详细信息来创建强大的机器人、自动消息传递 dapp 等等。 


图形艺术插图 - 一名男子被吸入显示器 - 说明如何监控 ETH 转账交易


如何使用 Moralis 的 JS SDK 监控所有 ETH 转账交易

虽然通过 Moralis 管理区域设置链上监控是最简单的途径,但在构建更高级的 dapp 时,您可能更喜欢通过 Moralis 的 SDK 进行设置。

注意:如果您想要有关如何通过 SDK 使用 Streams 的详细说明,请点击 Moralis 管理区域“Stream”页面上的相关按钮:


Moralis 管理区域的“Stream”页面


因此,您可能想知道如何以编程方式监控所有 ETH 转账交易。首先,您必须决定要使用哪种编程语言/框架。您有很多选择,但 JavaScript 或 Python 与 NodeJS 相结合往往是最受欢迎的。 

但是,在专注于通过 SDK 创建流之前,您需要准备一个服务器。后者将接收一个 webhook。幸运的是,您可以创建一个简单的 NodeJS Express 应用程序,它将为您提供一个“webhook”端点。 

创建本地服务器

因此,为此,您可以使用以下代码行 - 只需将它们复制粘贴到“index.js”文件中即可:

const express = require ( "express" ) ;
const app = express ( ) ;
const端口 = 3000 ;
应用程序。使用express。json
app.post ( " / webhook" , async ( req, res ) => {
 const { body } = req;
 尝试{
   控制台. log (主体) ;
 }捕获e {
   控制台.log ( e ) ;
   返回res.status ( 400 ) .json ( ) ;
 }
   返回res.status ( 200 ) . json ( ) ;
}
应用程序。监听端口,=> {
 console.log ( `正在监听` )
}

注意:如果您从未创建过 NodeJS 应用程序和设置 Express 服务器,请深入了解我们的“快速入门 NodeJS ”指南。 

有了上述脚本,只需npm run start使用终端输入并运行命令即可。

响应上述命令,你的终端应该返回“正在监听流”消息: 


“正在收听流媒体”消息


创建转发隧道

接下来,打开一个新终端并运行该ngrok http 3000命令。这将创建一个到端口的隧道3000。响应此命令,您将获得一个 URL 地址,可用作流的 webhook URL。


用作 webhook URL 的 URL 地址


准备好本地服务器和隧道后,您可以使用下一节中概述的代码行来监视各种链上活动。当然,“如何监视所有 ETH 转账交易”功能也是您可以关注的选项之一。

加密传输监控 – 代码演练

首先初始化另一个 NodeJS 应用程序。接下来,创建一个新的“index.js”文件,该文件需要依赖 Moralis 和dotenv

const Moralis = require ( "moralis" ) 默认;
const { EvmChain } =需要“@moralisweb3/common-evm-utils”
需要“dotenv” config

此外,您需要创建一个“ .env ”文件。在该文件中,将您的 Moralis Web3 API 密钥存储在MORALIS_KEY变量下。要获取该变量的值,请访问您的 Moralis 管理区域,转到“设置”,然后复制默认 API 密钥或创建一个新密钥:


访问您的 Moralis 管理区域,转到“设置”,然后复制默认 API 密钥或创建一个新的


现在您有了 API 密钥,您可以初始化 Moralis。为此,请在下面添加以下代码行require (“dotenv”).config();

道德。开始{
   apiKey:进程.环境.MORALIS_KEY
 }

然后,是时候使用以下代码行来关注流的选项了: 

异步函数{
 const选项 = {
   链:[ EvmChain.孟买]
     标签:"转账"
 描述:“收听转会”
   包括ContractLogs: false
   包括NativeTxs:true
   webhookUrl:“你的 webhook url”
 }

查看上面的代码片段,您可以看到它定义了要关注的链、描述、标签和 webhook URL。这些都是我们在上一节中介绍的相同选项,因为我们使用了 Moralis 的管理 UI。

我们将专注于监听孟买测试网上的原生交易。因此,我们将 设置includeContractLogsfalse,以便不监听 ERC-20 交易。此外,我们将 设置为 ,专注于原生货币转账includeNativeTxstrue对于孟买网络,原生货币是“测试”MATIC。 

要在“index.js”脚本中使用上述代码行,您只需将其替换your webhook url为之前生成的ngrokURL:


将你的 webhook url 替换为之前生成的 ngrok URL


如上图所示,请确保/webhook在 URL 末尾添加ngrok。 

创建新流

通过完成上述所有步骤,您最终就可以实现本文介绍中展示的代码行了。 

因此,请关注上面定义的内容async function streams,并在该行下方添加以下代码片段webhookUrl

const newStream = await Moralis.Streams.add ( options )
 const { id } = newStream.toJSON ( ) ;
 const地址 = “wallet_address_you_want_to_track” ;
 等待Moralis。Streams。addAddress { address id }
 控制台.log ( “Fin )
}
( )

Moralis.Streams.add(options)方法使用上面定义的流选项来创建新流。接下来,代码使用它const {id}来获取新流的 ID。此外,它还定义了要监控的钱包地址。这是您需要wallet_address_you_want_to_track用实际地址替换的地方。 

Moralis.Streams.addAddress方法使用您的流的 ID 为其分配钱包地址。最后,代码Fin在完成所有前面的步骤后记录。    

要运行脚本,请输入node index.js。如果您按照上述说明进行了所有操作,您应该Fin在终端中看到:


在您的终端中收到消息


本国货币示例交易

在出于测试目的执行本地货币交易之前,请打开“Express 服务器”终端。在那里,您应该看到一个空的 webhook 正在初始化: 


空的 webhook 正在初始化


现在,使用您的 MetaMask 并从您正在监控的地址转移一些“测试”MATIC。一旦交易确认,您将能够在终端中看到测试交易的详细信息:  


您的终端中的测试交易详情


这就是如何通过其 SDK 使用 Moralis Streams 监控所有 ETH 转移交易!

什么是加密交易监控?

无论您决定跟踪特定的智能合约还是钱包,最终还是要监听实时的链上交易。由于交易围绕不同的活动进行,因此您有很多选择。

例如,在上面的教程中,我们首先关注 ERC-20 转账,然后关注原生转账。然而,这只是两个常见的链上事件示例。您还可以关注其他几个链上事件。各种 dapp 都可以从使用这种监控中受益匪浅。


加密交易监控营销横幅


最佳加密交易监控工具

您可能知道,链上数据(对于公共区块链)可供任何人使用。但是,原始格式的数据毫无用处。因此,开发人员要么浪费时间和资源自己解析数据,要么使用出色的工具来为他们完成工作。

在监控加密交易方面,Moralis 的 Streams API 是最好的工具。它允许开发人员在事件发生时检测它们,并返回与这些事件相关的解析数据。因此,这为 dapp 开发人员节省了大量时间,使他们能够专注于创建最佳用户体验。 

Streams API 工具的一些核心优势包括:

  • ✅ 跨链互操作性

  • ✅ 用户友好性(跨平台互操作性)

  • ✅ 监听加密钱包和智能合约

  • ✅ 速度和效率

  • ✅ 高级过滤选项

  • ✅ 可通过免费帐户访问

此外,有了这个强大的工具,您还可以避免:

  • ❌ 连接和维护有缺陷的 RPC 节点

  • ❌ 构建不必要的抽象

  • 浪费时间构建复杂的数据管道

有些开发者仍在使用 ethers.js 监听区块链,因此错过了上述所有好处。

作者:GTokenTool一键发币平台

交流群:https://t.me/+Kz4u3xoDpFo3ZWY1

同类推荐