GTokenTool全网最好的代币发行工具平台

当前位置:首页 >> 加密百科 >> 如何使用 RPC 节点获取 ERC-20 代币余额

如何使用 RPC 节点获取 ERC-20 代币余额

admin 加密百科 632


借助我们的扩展 RPC 方法,您可以通过 RPC 样式的请求轻松查询已解码的、人性化的数据。轻松即时访问 ERC-20 代币余额、已解码的交易、代币价格等。

好奇它是如何工作的?在本教程中,我们将向您展示如何使用 Moralis 通过 RPC 节点获取 ERC-20 代币余额。让我们开始吧!

ERC-20 代币余额是什么?

简而言之,ERC-20 代币余额是指特定钱包或地址持有的代币数量。由于存在各种类型的 ERC-20 代币,因此钱包可以同时持有多个代币余额。例如,用户可能拥有 5 个 Wrapped BTC、100 个 USDC 和 1,000,000 个 Shiba Inu 代币。


文字:“ERC-20 代币余额是什么?”


为什么 ERC-20 代币余额对开发人员很重要?

ERC-20 代币余额对于许多 Web3 应用程序至关重要。以下是三个主要示例:

  • 钱包:加密货币钱包需要检索并显示 ERC-20 代币余额,以便用户可以查看他们拥有哪些代币以及数量。

  • 投资组合追踪器:投资组合追踪器依靠 ERC-20 代币余额来准确监控用户的资产、跟踪价格变化并向用户更新其整体投资组合表现。

  • 税务平台:为了生成准确的税务报告,税务平台必须访问其用户的 ERC-20 代币余额。

这些只是几个例子;ERC-20 代币余额对于大多数 Web3 dapp 来说都是必要的!

引入扩展的 RPC 方法 – 使用 RPC 节点获取 ERC-20 代币余额的最简单方法 

Moralis 的扩展 RPC 方法简化了使用 RPC 节点查询解码的、人类可读数据的过程,使得 dapp 开发更加容易。


Moralis 的扩展 RPC 方法。


您可以访问的关键数据:

  • eth_getTokenBalances:通过钱包检索 ERC-20 代币余额。

  • eth_getTransactions:通过钱包地址获取原生交易。

  • eth_getDecodedTransactions:通过地址访问详细的钱包交易历史记录。

  • eth_getTokenPrice:通过代币地址获取价格。

  • eth_getTokenMetadata:通过代币地址获取ERC-20元数据。

  • eth_getNFTBalances:通过钱包地址检索 NFT。

  • eth_getNFTCollections:通过钱包访问 NFT 收藏。

本质上,我们的扩展 RPC 方法使您可以轻松查询并将解码的、人类可读的加密数据集成到您的 dapps 中!

为什么需要扩展 RPC 方法?

使用传统 RPC 方法查询链上数据可能很麻烦。这些方法并未针对常见查询进行优化,例如“钱包 X 持有哪些 ERC-20 代币?”要获取此信息,您通常需要发出多个请求并手动编译数据,这非常耗时且耗费资源。幸运的是,Moralis 的扩展 RPC 方法可以派上用场。

我们的扩展 RPC 方法让您可以通过简单的 RPC 样式请求轻松获取 ERC-20 代币余额、钱包历史记录、NFT 余额等,从而使通过节点获取加密数据比以往更加高效。

想看看它是如何工作的吗?查看下面的教程,了解如何使用我们的扩展 RPC 方法获取 ERC-20 代币余额!

三步教程:如何使用 RPC 节点获取 ERC-20 代币余额

现在我们将向您展示如何使用 RPC 节点无缝获取 ERC-20 代币余额。得益于我们扩展的 RPC 方法的可访问性,您可以通过三个简单的步骤获取此数据:

  1. 注册 Moralis 并创建一个节点。

  2. 编写一个调用端点的脚本eth_getTokenBalances。

  3. 运行代码。

然而,在开始之前,您需要解决一些先决条件。

先决条件

在开始本教程之前,请确保您已准备好以下内容:

  • Node.js v14+

  • npm/yarn

步骤 1:注册 Moralis 并创建节点

单击右上角的“免费开始”按钮来设置您的 Moralis 帐户:


红色箭头指向 Moralis.io 上的“免费开始”按钮。


从那里登录,转到“节点”选项卡,然后单击“+ 创建节点”:


红色箭头指向“节点”选项卡和“+ 创建节点”按钮。


接下来,选择“以太坊”,然后选择“主网”,然后单击“创建节点”按钮:


显示以太坊主网节点的配置。


这将为您提供两个节点 URL。复制并保存其中一个 URL,因为您将在下一节中需要它:


红色箭头指向以太坊 RPC 节点的复制按钮。


eth_getTokenBalances步骤 2:编写调用端点的脚本

首先打开 Visual Studio Code 或您喜欢的 IDE,然后设置一个新文件夹并使用提供的终端命令初始化一个项目:

npm init

之后,使用给定的命令安装必要的依赖项:

npm 安装 node-fetch--save
npm 安装 moralis@moralisweb3/common-evm-utils

在您的“package.json”文件中,请务必添加"type": ”module”:


类型:代码编辑器中突出显示的模块。


接下来,创建一个新的“index.js”文件并插入提供的代码:

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getTokenBalances” ,
  “参数” :[
    {
      “地址” :“0xcB1C1FdE09f811B294172696404e88E658659905” ,
    }
  ]
} )
} ;
.then (响应= >响应.json ())
.then (响应= >控制台.log (响应))
.catch ( err = > console . error ( err ) ) ;

替换YOUR_NODE_URL为您之前复制的节点 URL,并address根据需要调整参数以适合您的查询:


红色箭头指向代码编辑器中的地址和YOUR_NODE_URL。


就是这样。从这里开始,您只需运行代码。

步骤 3:运行代码

打开一个新终端并在项目的根文件夹中运行提供的命令:

节点索引.js

作为回报,您将使用 RPC 节点获取指定钱包的 ERC-20 代币余额。以下是它可能的样子:

{
 //...
 结果:[
   {
     令牌地址:'0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' ,
     名称:'包裹以太' ,
     符号:'WETH' ,
     小数:18 ,
     徽标:'https ://logo.moralis.io/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca' ,
     缩略图:'https ://logo.moralis.io/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca' ,
     余额:' 10000000000000000 ' ,
     可能的垃圾邮件:false ,
     已验证合同:true ,
     总供应量:' 2746607222348759943423350 ' ,
     总供应量格式:' 2746607.22234875994342335 ' ,
     占总供应量的百分比:3.64085549569e-7
   } ,
   //...
 ]
}

就是这样!使用 Moralis 从 RPC 节点获取 ERC-20 代币余额就是这么简单!

了如何使用 RPC

  1. eth_getDecodedTransactions

  2. eth_getTokenPrice

  3. eth_getTokenMetadata


因此,事不宜迟,让我们仔细看看eth_getDecodedTransactions

eth_getDecodedTransactions

使用eth_get

以下是如何调用此主要方法的示例:

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getDecodedTransactions” ,
  “参数” :[
    {
      “地址” :“0xda74Ac6b69Ff4f1B6796cdDf61fBDd4A5f68525f” ,
    }
  ]
} )
} ;
获取('YOUR_NODE_URL' ,选项)
.then (响应= >响应.json ())
.then (响应= >控制台.log (响应))
.catch ( err = > console . error ( err ) ) ;

作为调用上述脚本的回报,您将收到钱包的完整交易历史记录。此外,每笔交易都包含人性化事件摘要、类别标签、徽标、地址等。以下是它可能的样子:

{
 //...
   “结果”:[
     {
       “块哈希”:“0x660274d577cd20b0b82c1bff5f3c5641ba6027544e005f9256d5add9c7447920” ,
       “区块编号”:“19868695” ,
       “block_timestamp”:“2024-05-14T14:00:23.000Z” ,
       “来自地址”:“0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f” ,
       “from_address_label”:null ,
       “from_address_entity”:null ,
       “from_address_entity_logo”:null ,
       “to_address”:“0xdac17f958d2ee523a2206206994597c13d831ec7” ,
       "to_address_label": "泰达币 (USDT)" ,
       “to_address_entity”:null ,
       "to_address_entity_logo": null ,
       “气体”:“55331” ,
       “gas_price”:“13623172301” ,
       “哈希”:“0xc565260238f59fc3f35b74f3011375c7d637db9b075f77d342c30d19f946272e” ,
       “随机数”:“14” ,
       “receipt_cumulative_gas_used”:“13917979” ,
       “receipt_gas_used”:“41309” ,
       "receipt_status": "1" ,
       “交易费用”:“0.000562759624582009” ,
       “交易索引”:“75” ,
       “值”:“0” ,
       “receipt_contract_address”:空,
       "nft_transfers": [ ]复制代码
       “erc20_transfers”:[
         {
           “token_name”:“Tether USD” ,
           “token_symbol”:“USDT” ,
           “token_logo”:“https://logo.moralis.io/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51” ,
           “token_decimals”:“6” ,
           “来自地址”:“0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f” ,
           “from_address_entity”:null ,
           “from_address_entity_logo”:null ,
           “from_address_label”:null ,
           “to_address”:“0x28c6c06298d514db089934071355e5743bf21d60” ,
           "to_address_label": "币安14" ,
           "to_address_entity": "币安" ,
           “to_address_entity_logo”:“https://entities-logos.s3.us-east-1.amazonaws.com/binance.png” ,
           “地址”:“0xdac17f958d2ee523a2206206994597c13d831ec7” ,
           “日志索引”:338 ,
           “值”:“50000000000” ,
           “possible_spam”:false ,
           “verified_contract”:true ,
           “方向”:“发送” ,
           “值格式”:“50000”
         }
       ] ,
       "method_label": "转移" ,
       “本机传输”:[ ] ,
       “summary”:“已向币安14发送50,000 USDT” ,
       “possible_spam”:false ,
       “类别”:“令牌发送”
     } ,
     //...
   }
 ]
}

eth_getTokenPrice

借助eth_getTokenPrice,您现在可以使用 RPC 样式的方法无缝获取基于合约地址的代币价格。您可以检索稳定币(如 USDT)、表情包币(如 Shiba Inu)以及介于两者之间的所有代币的价格。

以下是调用端点时的示例:

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getTokenPrice” ,
  “参数” :[
    {
      “地址” :“0xdAC17F958D2ee523a2206206994597C13D831ec7” ,
      “包括” :“百分比变化”
    }
  ]
} )
} ;
获取(YOUR_NODE_URL,选项)
.then (响应= >响应.json ())
.then (响应= >控制台.log (响应))
.catch ( err = > console . error ( err ) ) ;

作为运行上述脚本的回报,您将收到指定代币的美元和原生价格。此外,响应还包含价格随时间的变化、代币徽标、代币小数等内容。以下是响应的示例:

{
 //...
 结果:{
   代币名称: 'Tether USD' ,
   代币符号: 'USDT' ,
   令牌标志:'https : //logo.moralis.io/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51' ,
   标记小数点后的数字:' 6 ' ,
   本地价格:{
     值:' 375760131462618 ' ,
     小数:18 ,
     名称:'Ether' ,
     符号:'ETH' ,
     地址:'0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2'
   } ,
   美元价格:1.0000402502911871 ,
   美元价格格式:' 1.000040250291187229 ' ,
   ‘24 小时百分比变化’ :‘ -0.04543241491797881 ’ ,
   交易所名称: 'Uniswap v3' ,
   交易所地址:'0x1F98431c8aD98523631AE4a59f267346ea31F984' ,
   令牌地址:'0xdac17f958d2ee523a2206206994597c13d831ec7' ,
   价格最后更改时间:' 20534105 ' ,
   可能的垃圾邮件:false ,
   已验证合同:true ,
   对地址:'0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b' ,
   对总流动性美元:' 7148031.13 '
 }
}

eth_getTokenMetadata

使用eth_getTokenMetadata,您可以无缝获取 ERC-20 代币的元数据。此外,此端点涵盖了从 Shiba Inu 等 meme 币到 USDC 等稳定币的所有内容。 

以下是端点运行的一个示例: 

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getTokenMetadata” ,
  “参数” :[
    {
      “地址” :[
        “0xdac17f958d2ee523a2206206994597c13d831ec7”
      ]
    }
  ]
} )
} ;
获取('YOUR_NODE_URL' ,选项)
.then (响应= >响应.json ())
.then (响应= >控制台.log (响应))
.catch ( err = > console . error ( err ) ) ;

作为调用上述端点的回报,您将获得指定代币的元数据。这将包括代币名称、符号、小数、徽标、总供应量等。以下是示例响应: 

{
 //...
 结果:[
   {
     地址:'0xdac17f958d2ee523a2206206994597c13d831ec7' ,
     address_label : 'Tether USD (USDT )' ,
     名称:'Tether USD' ,
     符号:'USDT' ,
     小数:' 6 ' ,
     徽标:'https ://logo.moralis.io/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51' ,
     logo_hash :'ee7aa2cdf100649a3521a082116258e862e6971261a39b5cd4e4354fcccbc54d' ,
     缩略图:'https ://logo.moralis.io/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51' ,
     总供应量:' 51986637760874451 ' ,
     总供应量格式:' 51986637760.874451 ' ,
     完全稀释估值:' 51930247101.87 ' ,
     区块编号:' 20519335 ' ,
     已验证:1 ,
     创建时间:' 2017-11-28T00 :41 :21.000 Z ' ,
     可能的垃圾邮件:false ,
     已验证合同:true ,
     类别:[
       “资产支持代币”
       “交易所发行的资产代币” ,
       “基于平台的实用代币” ,
       “稳定币”
     ] ,
     链接:{
       推特:'https : //twitter.com/Tether_to' ,
       网站:'https ://tether.to/' ,
       脸书:'https : //www.facebook.com/tether.to' ,
       reddit :'https ://www.reddit.com'
     }
   }
 ]
}

eth_getNFTBalances

使用eth_geNFTBalances,您可以轻松检索特定钱包地址拥有的 NFT 列表。

以下是展示如何调用此端点的示例脚本:

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getNFTBalances” ,
  “参数” :[
    {
      “地址” :“0x3F22FC93143790a1bd11C37C65a0a0f7e7875eA2” ,
      “限制” :10 ,
    }
  ]
} )
} ;
获取('YOUR_NODE_URL' ,选项)
.then (响应= >响应.json ())
.then ( response = > console.log ( response.result , null , 2 ) )
.catch ( err = > console . error ( err ) ) ;

作为回报,您将获得指定地址拥有的所有 NFT 的列表。此外,每个对象都包含代币地址、大量元数据、垃圾邮件指示器、收集徽标等。以下是它可能的样子:

{
 //...
   结果:[
     {
       数量:' 1 ' ,
       token_id :' 8545 ' ,
       令牌地址:'0xbd3531da5cf5857e7cfaa92426877b022e612cf8' ,
       合约类型:'ERC721' ,
       所有者:'0x3f22fc93143790a1bd11c37c65a0a0f7e7875ea2' ,
       last_metadata_sync :' 2024-08-14T19 :47 :37.128 Z ' ,
       last_token_uri_sync :' 2024-08-14T19 :47 :32.019 Z ' ,
       元数据:' { “属性”:[ { “trait_type”:“背景” ,“value”:“红色” } ,{ “trait_type”:“皮肤” ,“value”:“正常” } ,{ “trait_type”:“身体” ,“value”:“红色衬衫” } ,{ “trait_type”:“脸” ,“value”:“胡须” } ,{ “trait_type”:“头部” ,“value”:“莫霍克绿色” } ] ,“description”:“8888 只可爱的胖乎乎的矮胖企鹅在冰冻的 ETH 区块链上滑动。” ,“image”:“ipfs://QmNf1UsmdGaMbpatQ6toXSkzDpizaGmC9zfunCyoz1enD5/penguin/8545.png” ,“name”:“矮胖的企鹅 #8545” } ' ,
       区块编号:' 18777311 ' ,
       区块数量:null ,
       名称:'PudgyPenguins' ,
       符号:'PPG' ,
       token_hash : ' 5e8 faae3c07cd3bdb8bfa817e5a14a1b ' ,
       token_uri : 'https : //ipfs.moralis.io : 2053 /ipfs/bafybeibc5sgo2plmjkq2tzmhrn54bk3crhnc23zd2msg4ea7a4pxrkgfna/ 8545 ' ,
       minter_address :空,
       已验证的集合:true ,
       可能的垃圾邮件:false ,
       collection_logo :'https ://i.seadn.io/gae/yNi-XdGxsgQCPpqSio4o31ygAV6wURdIdInWRcFIl46UjUQ1eV7BEndGe8L661OoG-clRi7EgInLX4LPu9Jfw4fq0bnVYHqg7RFi ?w = 500 &auto = format' ,
       collection_banner_image :'https ://i.seadn.io/gcs/files/8a26e3de0f309089cbb1e5ab969fc0bc.png ?w= 500 &auto=format'
     } ,
     //...
   ]
 }
}

eth_getNFTCollections

获取特定钱包拥有的所有 NFT 收藏品列表,包括收藏品详细信息和元数据。 

以下是端点的实际运行情况: 

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getNFTCollections” ,
  “参数” :[
      {
      “地址” :“0x3F22FC93143790a1bd11C37C65a0a0f7e7875eA2” ,
      “限制” :10
    }
  ]
} )
} ;
获取('YOUR_NODE_URL' ,选项)
.then (响应= >响应.json ())
.then (响应= >控制台.log (响应))
.catch ( err = > console . error ( err ) ) ;

调用上述端点将提供指定钱包拥有的所有集合的数组。每个对象都包含丰富的数据,包括名称、集合徽标、集合横幅、垃圾邮件指示符等。以下是它可能的样子: 

{
 //...
   结果:[
     {
       令牌地址:'0xbd3531da5cf5857e7cfaa92426877b022e612cf8' ,
       可能的垃圾邮件:false ,
       合约类型:'ERC721' ,
       名称:'PudgyPenguins' ,
       符号:'PPG' ,
       已验证的集合:true ,
       collection_logo :'https ://i.seadn.io/gae/yNi-XdGxsgQCPpqSio4o31ygAV6wURdIdInWRcFIl46UjUQ1eV7BEndGe8L661OoG-clRi7EgInLX4LPu9Jfw4fq0bnVYHqg7RFi ?w = 500 &auto = format' ,
       collection_banner_image :'https ://i.seadn.io/gcs/files/8a26e3de0f309089cbb1e5ab969fc0bc.png ?w= 500 &auto=format'
   } ,
     //...
   ]
 }
}

Moralis 概述 – 探索 RPC 节点和 Web3 API

Moralis 是业界排名第一的加密数据提供商。我们的开发工具套件包括顶级 RPC 节点和多个用例专用 API,例如 Wallet API、Token API、Streams API 等。使用 Moralis,您可以在一个地方获得所有加密数据。


莫拉利斯标志。


是什么使得 Moralis 与众不同?

  • 一次调用 – 所有数据:我们的 API 和扩展 RPC 方法在设计时充分考虑了结果,让您用更少的调用获得更多数据。通过一次请求即可获取 ERC-20 代币余额、钱包的完整历史记录、代币价格等。

  • 多链支持:我们的节点和 Web3 API 支持所有主流链,包括以太坊、Polygon、BSC、Optimism、Base 等。在我们支持的网络上享受全部功能,因此您只需要一个数据提供商即可支持所有链。

  • 企业级安全: Moralis 通过了 SOC 2 Type 2 认证,证明了我们对安全性和可靠性的承诺。

让我们深入了解我们的产品,突出 Moralis 的优势!

RPC 节点

Moralis 是领先的节点提供商,支持 30 多个区块链,包括以太坊、Base 和 Polygon。借助我们用户友好的界面,您只需单击几个按钮即可轻松将节点集成到您的项目中。 


文本:“Web3 的终极 RPC 节点”


我们的节点有何不同?

  • 速度:业界领先的响应时间低至 70 毫秒。

  • 可靠性:正常运行时间 99.9%,确保数据持续可用。

  • 安全性:经过 SOC 2 Type 2 认证,可提供企业级保护。

在我们的RPC 节点页面上发现更多信息!

Web3 API 

Moralis 的 Web3 API 套件由几个突出的接口组成。以下是其中五个:


莫拉利斯标志。


  • 钱包 API:用于构建钱包并将钱包功能集成到 dapp 中的领先工具。只需一行代码即可检索任何钱包的历史记录、代币余额、净值、盈利能力等。

  • 代币 API:使用代币 API 访问 ERC-20 数据。获取余额、价格、元数据等。

  • NFT API:非常适合构建 NFT 市场、Web3 游戏和其他 NFT 相关平台。使用最少的代码获取 NFT 余额、元数据、价格等。

  • 价格 API:获取实时 ERC-20 价格、NFT 底价、OHLCV 价格等。将价格数据无缝集成到您的项目中。

  • Streams API:只需单击几下即可为自定义事件设置 Web3 数据管道。非常适合实时警报、用当前事件填充数据库以及将实时见解纳入您的项目。

要了解有关我们的接口的更多信息,请访问我们的Web3 API页面!

摘要:如何使用 RPC 节点获取 ERC-20 代币余额

无论您要构建 Web3 钱包、投资组合跟踪器、税务工具还是其他类似平台,您都有可能需要访问用户的 ERC-20 代币余额。然而,从 RPC 节点查询 ERC-20 代币余额传统上是一项麻烦且耗时的工作。这样做需要使用类似eth_getBalance和需要自己拼凑大量数据的方法发出许多请求。幸运的是,现在有一个更简化的替代方案:Moralis 的扩展 RPC 方法。


钱包周围都是硬币。


我们的扩展 RPC 方法使您可以使用 RPC 样式的请求无缝查询已解码和已扩充的数据。借助此功能,您只需一次调用即可使用 RPC 节点获取 ERC-20 代币余额、交易历史记录、代币价格等。

为了强调我们的扩展 RPC 方法的可访问性,以下是eth_getTokenBalances实际的端点:

从‘node-fetch’导入fetch ;
const选项 = {
方法:'POST' ,
标题:{
  接受:'application/json' ,
  ‘内容类型’ :‘应用程序/json’
} ,
主体:JSON.stringify ({
  “jsonrpc” :“2.0” ,
  “ID” :1 ,
  “方法” :“eth_getTokenBalances” ,
  “参数” :[
    {
      “地址” :“0xcB1C1FdE09f811B294172696404e88E658659905” ,
    }
  ]
} )
} ;
获取('YOUR_NODE_URL' ,选项)
.then (响应= >响应.json ())
.then (响应= >控制台.log (响应))
.catch ( err = > console . error ( err ) ) ;

作为调用上述脚本的回报,您将获得指定地址的 ERC-20 代币余额,其中包含代币徽标、垃圾邮件指示器等。以下是示例响应:

{
 //...
 结果:[
   {
     令牌地址:'0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' ,
     名称:'包裹以太' ,
     符号:'WETH' ,
     小数:18 ,
     徽标:'https ://logo.moralis.io/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca' ,
     缩略图:'https ://logo.moralis.io/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca' ,
     余额:' 10000000000000000 ' ,
     可能的垃圾邮件:false ,
     已验证合同:true ,
     总供应量:' 2746607222348759943423350 ' ,
     总供应量格式:' 2746607.22234875994342335 ' ,
     占总供应量的百分比:3.64085549569e-7
   } ,
   //...
 ]
}

就是这样!使用 Moralis 时,通过 RPC 节点获取 ERC-20 代币余额并不一定比这更具挑战性。


如有不明白或者不清楚的地方,请加入官方电报群:https://t.me/gtokentool
协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
请先 登录 再评论,若不是会员请先 注册!