如何列出 ETH 地址中的所有代币

  • 想样
  • 发布于 2天前
  • 阅读 35

概述今天的文章将从深入介绍ETH地址开始。在此过程中,我们将介绍它们是什么以及它们的用途。从那里,我们将直接进入教程,向您展示如何使用Moralis的TokenAPI通过三个简单的步骤列出ETH地址中的所有硬币:获取MoralisAPI密钥getWalletTo

<!--StartFragment-->

概述 

今天的文章将从深入介绍 ETH 地址开始。在此过程中,我们将介绍它们是什么以及它们的用途。从那里,我们将直接进入教程,向您展示如何使用 Moralis 的 Token API 通过三个简单的步骤列出 ETH 地址中的所有硬币: 

  1. 获取 Moralis API 密钥
  2. getWalletTokenBalances()编写调用端点的脚本
  3. 运行代码

<!--EndFragment--> <!--StartFragment-->

什么是 ETH 地址? 

ETH 地址是一个 42 个字符长的字母数字十六进制字符串,用作以太坊区块链上外部拥有帐户 (EOA) 或智能合约的唯一公共标识符。此类地址主要用于发送、接收和存储数字资产,如可替代和不可替代代币 (NFT)!

<!--EndFragment-->

bab.png <!--StartFragment-->

ETH 地址有两种类型,我们将在下面简要介绍: 

  • 账户地址:账户地址(通常也称为“钱包地址”或“区块链地址”)对应于由私钥控制的区块链上的公共用户账户。账户地址用于发送、接收和存储数字资产,以及与智能合约和 dapp 交互。

<!---->

  • 合约地址:合约地址与部署在区块链上的智能合约相关联。合约地址不像账户地址那样由个人或实体控制,而是代表智能合约在网络上所在的位置。 

总而言之,ETH 地址是以太坊账户和智能合约的唯一标识符。此外,它们通常用于发送、接收和存储数字资产,如可替代代币和 NFT! 

<!--EndFragment--> <!--StartFragment-->

步骤 1:获取 Moralis API 密钥 

要调用 Token API,您需要一个 Moralis API 密钥,您可以通过注册 Moralis 免费获取该密钥。因此,如果您还没有,请点击 Moralis 主页右上角的“免费开始”按钮来创建您的帐户:

<!--EndFragment-->

bab.png <!--StartFragment-->

使用手头的帐户,选择一个项目,使用左侧的导航栏转到“设置”选项卡,向下滚动到“API 密钥”部分,然后复制您的密钥:

<!--EndFragment-->

bab.png <!--StartFragment-->

现在保存密钥,因为在下一步初始化 Moralis 软件开发工具包 (SDK) 时您将需要它!

getWalletTokenBalances()步骤 2:编写调用端点的 脚本

第二步,首先在您喜欢的 IDE 中设置一个新的项目文件夹。从那里,打开一个新终端并在根文件夹中运行以下命令来安装 Moralis SDK:

<!--EndFragment-->

npm install moralis @moralisweb3/common-evm-utils

<!--StartFragment--> 接下来,创建一个新的”index.js”文件并添加以下代码:  <!--EndFragment-->

const Moralis = require("moralis").default;
const { EvmChain } = require("@moralisweb3/common-evm-utils");

const runApp = async () => {
  await Moralis.start({
    apiKey: "YOUR_API_KEY",
    // ...and any other configuration
  });

  const address = "0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d";

  const chain = EvmChain.ETHEREUM;

  const response = await Moralis.EvmApi.token.getWalletTokenBalances({
    address,
    chain,
  });

  console.log(response.toJSON());
};

runApp();

<!--StartFragment-->

在运行代码之前,您需要进行一些小配置。首先用YOUR_API_KEY您在第一步中复制的密钥进行替换。这样做将初始化 Moralis SDK:

<!--EndFragment-->

bab.png <!--StartFragment-->

请记住,您不想暴露您的 Moralis API 密钥。因此,在构建可用于生产的 dapp 时,请务必使用环境变量和其他最佳实践。

从这里,您还需要address通过添加您想要从中获取所有硬币列表的 ETH 地址来配置 const:

<!--EndFragment-->

bab.png <!--StartFragment--> 然后我们在调用端点时将addresschain作为参数传递getWalletTokenBalances():  <!--EndFragment-->

bab.png <!--StartFragment-->

这就是代码;您现在可以运行脚本并获取指定 ETH 地址中所有硬币的列表! 

步骤 3:运行代码 

要运行代码,请继续启动一个新终端,cd进入项目的根文件夹,然后执行以下命令:

<!--EndFragment-->

node index.js

<!--StartFragment-->

运行代码后,您将收到一个响应,其中包含指定 ETH 地址中所有硬币的列表。它看起来应该像这样:

<!--EndFragment-->

[
  {
    "token_address": "0xff20548405c6f024264b5c8dc954625285b799e1",
    "symbol": "BTCETF",
    "name": "BTCETF",
    "logo": null,
    "thumbnail": null,
    "decimals": 18,
    "balance": "166000000000000000000000",
    "possible_spam": false
  },
  {
    "token_address": "0xe90cc7d807712b2b41632f3900c8bd19bdc502b1",
    "symbol": "KUMA",
    "name": "Kuma",
    "logo": null,
    "thumbnail": null,
    "decimals": 18,
    "balance": "3000000000000000000000000000",
    "possible_spam": false
   },
  //...
]

<!--StartFragment-->

恭喜您;现在您知道如何获取 ETH 地址中所有硬币的列表! 

现在,如果你想要了解如何处理这些数据,请加入我们的下一节。在此过程中,我们将探讨列出 ETH 地址中所有代币的一些常见用例! 

列出 ETH 地址中所有代币的用例 

列出 ETH 地址中的所有代币有很多用例,我们无法在本节中介绍所有这些用例。相反,我们将简要列出四个需要以某种方式访问​​地址余额的平台的突出示例: 

  • 投资组合追踪器:加密货币投资组合追踪器是一个数字平台,可让您在一个地方监督所有加密货币持有量。一些很好的例子包括 Delta、Koinly 和 Kubera。 

<!---->

  • 去中心化交易所 (DEX): DEX 是一种加密货币交易所,无需中介参与即可实现点对点 (P2P) 交易。成熟的平台包括 Uniswap、Curve Finance 和 PancakeSwap。 

<!---->

  • 区块浏览器:区块浏览器是一种数字工具,可让您搜索有关区块链网络的实时和历史信息。这包括从区块数据到特定地址的代币余额的所有内容。一些著名的区块浏览器示例包括 Etherscan、PolygonScan 和 BscScan。

<!---->

  • Web3 钱包: Web3 钱包是数字平台,可让您存储和管理数字资产,包括购买、出售和交换代币。Web3 钱包的示例包括 MetaMask、Coinbase Wallet 和 Ledger。 

<!--EndFragment-->

bab.png <!--StartFragment-->

现在您知道如何列出 ETH 地址中的所有硬币以及这些数据有用的某些情况,让我们在下一节进一步探索 Moralis 的功能! 

除了查询 ETH 地址中的所有代币列表之外——进一步探索 Moralis 

Moralis 是业界首屈一指的 Web3 API 提供商,我们的动态工具集的功能远远超出了 Token API! 

使用 Moralis 构建 ETH 地址项目 - 图形艺术插图

在 Moralis 业界领先的 Web3 API 套件中,您会发现适用于各种用例的多个接口,下面我们将探讨三个示例: 

  • 钱包 API:如果您希望构建 Web3 钱包或将钱包功能集成到您的 dapp 中,我们的钱包 API是终极工具。通过单个 API 调用,您可以轻松获取钱包余额、实时转账、个人资料数据等。例如,以下是使用端点获取任何钱包的本机余额是多么容易的示例getNativeBalance(): 

<!--EndFragment-->

const response = await Moralis.EvmApi.balance.getNativeBalance({
  "chain": "0x1",
  "address": "0xDC24316b9AE028F1497c275EB9192a3Ea0f67022"
});

<!--StartFragment-->

  • NFT API: Moralis 的NFT API是业界领先的 NFT 相关数据工具。借助此一流界面,您只需几行代码即可获得 NFT 元数据、余额、链上价格等。例如,使用getWalletNFTs()端点,您可以无缝获取任何钱包的 NFT 余额:  <!--EndFragment-->
const response = await Moralis.EvmApi.nft.getWalletNFTs({
  "chain": "0x1",
  "address": "0xff3879b8a363aed92a6eaba8f61f1a96a9ec3c1e"
});

<!--StartFragment-->

区块链 API:使用区块链 API,您可以解锁原始和解码区块链数据的功能。轻松获取区块数据、智能合约日志、事件等。例如,以下是如何使用getBlock()端点获取区块数据(包括哈希、时间戳等)的示例: <!--EndFragment-->

const response = await Moralis.EvmApi.block.getBlock({
  "chain": "0x1",
  "blockNumberOrHash": "18541416"
});

<!--StartFragment-->

因此,无论您要构建 Web3 钱包、NFT dapp、区块链浏览器还是任何其他平台,Moralis 都有满足您需求的完美工具。

<!--EndFragment-->

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
想样
想样
江湖只有他的大名,没有他的介绍。