介紹
本教程將展示如何使用Chainbase API 的getTopTokenHolders
函數來獲取以太坊區塊鏈上某個加密貨幣的頭部持有者。了解誰持有最多的代幣對於許多方面都是有幫助的,比如與他們合作並跟踪資金流動。
目錄
- 概述- 使用Chainbase 的工具
- 步驟1:在Chainbase 上設置免費賬戶
- 步驟2:編寫使用Chainbase API 的腳本
- 步驟3:打印代幣持有者
- 結論
- 常見問題
1. 概述- 使用Chainbase 的工具
開始之前,您需要準備以下工具:
- 在Chainbase 上註冊一個免費賬戶並獲取API 密鑰。
- 一個集成開發環境(IDE)。我們推薦使用Visual Studio Code(VS Code)。
2. 步驟1:在Chainbase 上設置免費賬戶
要使用Chainbase 的功能,請按照以下步驟進行操作:
- 在Chainbase網站上註冊一個免費賬戶。
- 登錄Chainbase 賬戶並訪問控制台以獲取概覽。
- 在控制台中創建一個新項目以獲取API 密鑰。
3. 步驟2:編寫使用Chainbase API 的腳本
您可以使用JavaScript 和Chainbase API 來檢索前持有者。下面是使用不同庫的兩個示例: fetch
和axios
。
在JavaScript 中使用fetch
javascript
javascriptCopy code network_id = '1'; // 查看https://docs.chainbase.com/reference/supported-chains 获取不同链的id。 token_addr = '0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0'; // 以MATIC 代币地址为例。 fetch(`https://api.chainbase.online/v1/token/top-holders?chain_id=${network_id}&contract_address=${token_addr}&page=1&limit=5`, { method: 'GET', headers: { 'x-api-key': CHAINBASE_API_KEY, // 替换为您的API 密钥。 'accept': 'application/json' } }).then(response => response.json()) .then(data => console.log(data.data)) .catch(error => console.error(error));
在JavaScript 中使用axios
您需要首先在終端中使用`npm install axios --save` 安裝axios。
javascript
javascriptCopy code network_id = '1'; // 查看https://docs.chainbase.com/reference/supported-chains 获取不同链的id。 token_addr = '0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0'; // 以MATIC 代币地址为例。 const axios = require('axios'); const options = { url: `https://api.chainbase.online/v1/token/top-holders?chain_id=${network_id}&contract_address=${token_addr}&page=1&limit=5`, method: 'GET', headers: { 'x-api-key': CHAINBASE_API_KEY, // 替换为您的API 密钥。 'accept': 'application/json' } }; axios(options) .then(response => console.log(response.data.data)) .catch(error => console.log(error));
4. 步驟3:顯示代幣持有者
Chainbase API 的getTopTokenHolders
函數需要鏈的ID 和ERC20 代幣的合約地址作為輸入參數。該函數返回有關前持有者的信息。此外,您可以使用page
和limit
參數進行分頁,並檢索特定數量的頭部持有者地址。
要顯示代幣持有者地址,請在終端中執行命令node <filename>.js
,其中<filename>
表示您腳本的名稱。以下是API 返回的預期JSON 數據示例:
css
jsonCopy code { "count": 593525, "holders": [ { "wallet_address": "0x5e3ef299fddf15eaa0432e6e66473ace8c13d908", "amount": "3814264335.329752", "usd_value": "4167560569.389670" }, { "wallet_address": "0x401f6c983ea34274ec46f84d70b31c151321188b", "amount": "910440417.955799", "usd_value": "994769961.668955" }, { "wallet_address": "0xcd6507d87f605f5e95c12f7c4b1fc3279dc944ab", "amount": "590639315.000000", "usd_value": "645347281.551875" }, { "wallet_address": "0xb316fa9fa91700d7084d377bfdc81eb9f232f5ff", "amount": "434226114.715070", "usd_value": "474446308.590553" }, { "wallet_address": "0xcbfe11b78c2e6cb25c6eda2c6ff46cd4755c8fca", "amount": "273304816.000000", "usd_value": "298619674.582000" } ] }
5. 結論
通過按照教程的步驟,您已經學會瞭如何使用Chainbase API 的getTopTokenHolders
函數獲取部署在以太坊區塊鏈上的ERC20 代幣頭部持有者的詳細信息。
6. 常見問題
問題1:我可以在其他區塊鍊網絡上使用Chainbase API 來獲取代幣持有者嗎?
目前,我們僅提供以太坊ERC-20 代幣持有者的信息。其他鏈的數據將很快提供。
問題2:如何增加檢索到的代幣持有者數量?
您可以調整API 請求中的limit
參數以獲取更多的代幣持有者。增加該值以檢索更大的列表,但請注意過高的值可能會影響性能。
問題3:是否可以根據持有量對代幣持有者進行排序?
Chainbase API 已經根據持有量以降序返回代幣持有者。
問題4:我可以獲取有關代幣持有者的其他信息嗎?
是的,API 提供了錢包地址、代幣數量和當前幣價。您可以使用這些數據來分析和與代幣持有者進行互動。
問題5:Chainbase API 多久更新一次代幣持有者信息?
我們的API 提供實時的、可排序的代幣持有者信息。其他API(例如瀏覽器中使用的API)通常具有大約20 分鐘的緩存。