概述今天的文章将从深入介绍ETH地址开始。在此过程中,我们将介绍它们是什么以及它们的用途。从那里,我们将直接进入教程,向您展示如何使用Moralis的TokenAPI通过三个简单的步骤列出ETH地址中的所有硬币:获取MoralisAPI密钥getWalletTo
<!--StartFragment-->
今天的文章将从深入介绍 ETH 地址开始。在此过程中,我们将介绍它们是什么以及它们的用途。从那里,我们将直接进入教程,向您展示如何使用 Moralis 的 Token API 通过三个简单的步骤列出 ETH 地址中的所有硬币:
getWalletTokenBalances()
编写调用端点的脚本<!--EndFragment--> <!--StartFragment-->
ETH 地址是一个 42 个字符长的字母数字十六进制字符串,用作以太坊区块链上外部拥有帐户 (EOA) 或智能合约的唯一公共标识符。此类地址主要用于发送、接收和存储数字资产,如可替代和不可替代代币 (NFT)!
<!--EndFragment-->
<!--StartFragment-->
ETH 地址有两种类型,我们将在下面简要介绍:
<!---->
总而言之,ETH 地址是以太坊账户和智能合约的唯一标识符。此外,它们通常用于发送、接收和存储数字资产,如可替代代币和 NFT!
<!--EndFragment--> <!--StartFragment-->
要调用 Token API,您需要一个 Moralis API 密钥,您可以通过注册 Moralis 免费获取该密钥。因此,如果您还没有,请点击 Moralis 主页右上角的“免费开始”按钮来创建您的帐户:
<!--EndFragment-->
<!--StartFragment-->
使用手头的帐户,选择一个项目,使用左侧的导航栏转到“设置”选项卡,向下滚动到“API 密钥”部分,然后复制您的密钥:
<!--EndFragment-->
<!--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-->
<!--StartFragment-->
请记住,您不想暴露您的 Moralis API 密钥。因此,在构建可用于生产的 dapp 时,请务必使用环境变量和其他最佳实践。
从这里,您还需要address
通过添加您想要从中获取所有硬币列表的 ETH 地址来配置 const:
<!--EndFragment-->
<!--StartFragment-->
然后我们在调用端点时将
address
和chain
作为参数传递getWalletTokenBalances()
:
<!--EndFragment-->
<!--StartFragment-->
这就是代码;您现在可以运行脚本并获取指定 ETH 地址中所有硬币的列表!
要运行代码,请继续启动一个新终端,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 地址中的所有代币有很多用例,我们无法在本节中介绍所有这些用例。相反,我们将简要列出四个需要以某种方式访问地址余额的平台的突出示例:
<!---->
<!---->
<!---->
<!--EndFragment-->
<!--StartFragment-->
现在您知道如何列出 ETH 地址中的所有硬币以及这些数据有用的某些情况,让我们在下一节进一步探索 Moralis 的功能!
Moralis 是业界首屈一指的 Web3 API 提供商,我们的动态工具集的功能远远超出了 Token API!
在 Moralis 业界领先的 Web3 API 套件中,您会发现适用于各种用例的多个接口,下面我们将探讨三个示例:
getNativeBalance()
: <!--EndFragment-->
const response = await Moralis.EvmApi.balance.getNativeBalance({
"chain": "0x1",
"address": "0xDC24316b9AE028F1497c275EB9192a3Ea0f67022"
});
<!--StartFragment-->
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-->
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!