在區塊鏈世界中,查看自己錢包中的 ERC-20 代幣餘額相對簡單——只需打開錢包應用,就能看到所有導入代幣的餘額信息。然而,當我們需要查詢他人地址持有的代幣時,問題就變得復雜了,尤其是在沒有直接訪問對方錢包權限的情況下。對於個人投資者、企業分析師或區塊鏈研究人員來說,快速獲取特定地址的代幣持倉數據是一項重要能力。幸運的是,現代區塊鏈基礎設施提供了多種 API 解決方案,讓我們能夠高效查詢任何以太坊地址的 ERC-20 代幣持倉情況。本文將詳細介紹三種主流 API 服務——Chainbase、Alchemy 和 Moralis,它們各自提供了查詢特定地址 ERC-20 代幣的專業解決方案。我們將以開發者友好的方式,展示如何通過這些工具實現資產查詢功能。## Chainbase: 區塊鏈數據查詢的高效之選Chainbase 是一款強大的 Web3 區塊鏈交互層基礎設施,其 API 服務能幫助開發者快速訪問和利用區塊鏈數據。通過簡單步驟,我們就能查詢任意地址的代幣持倉情況。### 帳戶設置與準備工作1. **創建帳戶與獲取 API 密鑰** - 訪問 Chainbase 官網註冊免費帳戶 - 登入後進入控制臺,創建新項目 - 獲取並保存 API 密鑰,這是後續查詢的必要憑證2. **開發環境準備** - 確保您的開發環境已安裝 Node.js - 使用 npm 安裝 Axios 庫:npm install axios --save### 實現查詢功能使用 JavaScript 與 Chainbase API 交互,獲取指定地址的 ERC-20 代幣餘額:javascriptconst axios = require('axios');async function getERC20Tokens() { try { const response = await axios.get( ' { params: { chain_id: '1', // 以太坊主網 address: '0xd8da6bf26964af9d7eed9e03e53415d37aa96045', // 示例地址 limit: 5 // 返回前5個代幣 }, headers: { 'x-api-key': '您的API密鑰' // 替換爲您的實際密鑰 } } ); console.log(JSON.stringify(response.data, null, 2)); } catch (error) { console.error('查詢失敗:', error); }}getERC20Tokens();### 查看查詢結果運行腳本後,您將看到類似下方的 JSON 響應,顯示指定地址持有的 ERC-20 代幣詳情:{ "data": [ { "chain_id": "1", "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "contract_address": "0xc00e94cb662c3520282e6f5717214004a7f26888", "name": "Compound", "symbol": "COMP", "decimals": 18, "balance": "10472650474472796", "balance_in_usd": 0.71 }, ...更多代幣信息... ]}響應數據包含每個代幣的合約地址、名稱、符號、小數位數、餘額及美元價值等關鍵信息。## Alchemy: 專業的區塊鏈開發平台Alchemy 是區塊鏈開發領域的領先平台,提供強大的 API 工具來讀取和寫入區塊鏈數據。以下是通過 Alchemy 查詢 ERC-20 代幣餘額的詳細步驟:### 環境準備與帳戶設置1. **安裝必要工具** - 安裝 Node.js 和 NPM - 創建項目文件夾並初始化環境2. **獲取 Alchemy 訪問憑證** - 註冊 Alchemy 帳戶 - 創建新應用,選擇以太坊主網 - 保存應用的 HTTP URL 和 API 密鑰### 項目設置與開發創建項目結構並安裝依賴:bashmkdir eth-balancecd eth-balancenpm init -ynpm install alchemy-sdktouch main.js在 main.js 文件中編寫查詢代碼:javascriptconst { Alchemy, Network } = require("alchemy-sdk");// 配置訪問參數const config = { apiKey: "您的API密鑰", network: Network.ETH_MAINNET};const alchemy = new Alchemy(config);const address = "0xd8da6bf26964af9d7eed9e03e53415d37aa96045";// 獲取代幣餘額async function getTokenBalances() { const balances = await alchemy.core.getTokenBalances(address); console.log("代幣餘額數據:"); console.log(balances); // 處理非零餘額的代幣 const nonZeroBalances = balances.tokenBalances.filter(token => { return token.tokenBalance !== "0"; }); console.log(該地址持有 ${nonZeroBalances.length} 種非零餘額的ERC-20代幣); // 獲取更詳細的代幣信息 for (let token of nonZeroBalances) { const metadata = await alchemy.core.getTokenMetadata(token.contractAddress); console.log(代幣: ${metadata.name}); console.log(符號: ${metadata.symbol}); console.log(餘額: ${token.tokenBalance / Math.pow(10, metadata.decimals)}); console.log("-----"); }}getTokenBalances();### 運行查詢與結果分析執行腳本查看結果:bashnode main.js查詢結果將展示詳細的代幣信息,包括:- 代幣名稱和符號- 合約地址- 格式化後的餘額數量- 代幣元數據(如小數位數)Alchemy 的優勢在於它不僅提供了基礎的餘額查詢,還支持元數據獲取、代幣過濾和餘額格式化等高級功能,讓開發者能輕鬆構建完整的資產管理功能。## Moralis: 企業級 Web3 API 服務Moralis 提供了功能全面的 Web3 API 工具集,幫助開發者輕鬆實現區塊鏈功能集成。使用 Moralis 查詢 ERC-20 代幣餘額的步驟如下:### 前期準備工作1. **環境配置** - 安裝 Node.js v14+ 和 NPM - 設置系統環境變量2. **獲取 API 密鑰** - 創建 Moralis 帳戶 - 登入後在"設置">"祕密"中找到"Web3 API 密鑰" - 復制密鑰備用### 代碼實現創建一個新的 JavaScript 文件,編寫以下代碼:javascriptconst Moralis = require("moralis").default;// 初始化 Moralisasync function initMoralis() { await Moralis.start({ apiKey: "您的API密鑰" });}// 查詢錢包中的代幣async function fetchWalletTokens() { await initMoralis(); try { const address = "0xd8da6bf26964af9d7eed9e03e53415d37aa96045"; const response = await Moralis.EvmApi.token.getWalletTokenBalances({ address: address, chain: "0x1" // 以太坊主網 }); console.log(JSON.stringify(response.toJSON(), null, 2)); } catch (e) { console.error(e); }}fetchWalletTokens();### 執行查詢與結果解析運行腳本獲取結果:bashnode moralis-tokens.js查詢結果示例:json[ { "token_address": "0x4d224452801aced8b2f0aebe155379bb5d594381", "name": "ApeCoin", "symbol": "APE", "logo": "", "thumbnail": "", "decimals": 18, "balance": "5000000000000000000" }, { "token_address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", "name": "Wrapped Ether", "symbol": "WETH", "logo": null, "thumbnail": null, "decimals": 18, "balance": "7050000000000000000" }]Moralis API 的響應提供了完整的代幣信息,包括名稱、符號、合約地址、徽標URL以及按照代幣最小單位表示的餘額。這些數據可以直接用於開發資產管理應用、投資組合分析工具或區塊鏈數據可視化系統。## API 服務功能對比| 功能特性 | Chainbase | Alchemy | Moralis ||---------|----------|---------|---------|| 免費額度 | 有限請求次數 | 有免費套餐 | 有免費層級 || 查詢速度 | 快速 | 極快 | 快速 || 代幣元數據 | 支持 | 詳細支持 | 全面支持 || 歷史數據 | 部分支持 | 支持 | 支持 || 易用性 | 較高 | 中等 | 高 || 適用場景 | 基礎查詢 | 專業開發 | 企業應用 |通過這三種 API 服務,開發者和研究人員可以輕鬆獲取任何以太坊地址的 ERC-20 代幣持倉信息,爲資產分析、交易監控、稅務計算等應用場景提供可靠的數據支持。根據具體需求和技術偏好,選擇最適合的工具將有助於提升開發效率和用戶體驗。這些工具不僅方便開發者構建應用,也爲投資者提供了重要的資產透明度,幫助他們更好地了解區塊鏈世界中的資產分布情況。無論是出於研究目的還是實際應用需求,掌握這些 API 的使用方法都將爲您的區塊鏈之旅增添一份便利。
探索以太坊資產:如何查詢錢包內所有 ERC-20 代幣
在區塊鏈世界中,查看自己錢包中的 ERC-20 代幣餘額相對簡單——只需打開錢包應用,就能看到所有導入代幣的餘額信息。然而,當我們需要查詢他人地址持有的代幣時,問題就變得復雜了,尤其是在沒有直接訪問對方錢包權限的情況下。
對於個人投資者、企業分析師或區塊鏈研究人員來說,快速獲取特定地址的代幣持倉數據是一項重要能力。幸運的是,現代區塊鏈基礎設施提供了多種 API 解決方案,讓我們能夠高效查詢任何以太坊地址的 ERC-20 代幣持倉情況。
本文將詳細介紹三種主流 API 服務——Chainbase、Alchemy 和 Moralis,它們各自提供了查詢特定地址 ERC-20 代幣的專業解決方案。我們將以開發者友好的方式,展示如何通過這些工具實現資產查詢功能。
Chainbase: 區塊鏈數據查詢的高效之選
Chainbase 是一款強大的 Web3 區塊鏈交互層基礎設施,其 API 服務能幫助開發者快速訪問和利用區塊鏈數據。通過簡單步驟,我們就能查詢任意地址的代幣持倉情況。
帳戶設置與準備工作
創建帳戶與獲取 API 密鑰
開發環境準備
實現查詢功能
使用 JavaScript 與 Chainbase API 交互,獲取指定地址的 ERC-20 代幣餘額:
javascript const axios = require('axios');
async function getERC20Tokens() { try { const response = await axios.get( ' { params: { chain_id: '1', // 以太坊主網 address: '0xd8da6bf26964af9d7eed9e03e53415d37aa96045', // 示例地址 limit: 5 // 返回前5個代幣 }, headers: { 'x-api-key': '您的API密鑰' // 替換爲您的實際密鑰 } } ); console.log(JSON.stringify(response.data, null, 2)); } catch (error) { console.error('查詢失敗:', error); } }
getERC20Tokens();
查看查詢結果
運行腳本後,您將看到類似下方的 JSON 響應,顯示指定地址持有的 ERC-20 代幣詳情:
{ "data": [ { "chain_id": "1", "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "contract_address": "0xc00e94cb662c3520282e6f5717214004a7f26888", "name": "Compound", "symbol": "COMP", "decimals": 18, "balance": "10472650474472796", "balance_in_usd": 0.71 }, ...更多代幣信息... ] }
響應數據包含每個代幣的合約地址、名稱、符號、小數位數、餘額及美元價值等關鍵信息。
Alchemy: 專業的區塊鏈開發平台
Alchemy 是區塊鏈開發領域的領先平台,提供強大的 API 工具來讀取和寫入區塊鏈數據。以下是通過 Alchemy 查詢 ERC-20 代幣餘額的詳細步驟:
環境準備與帳戶設置
安裝必要工具
獲取 Alchemy 訪問憑證
項目設置與開發
創建項目結構並安裝依賴:
bash mkdir eth-balance cd eth-balance npm init -y npm install alchemy-sdk touch main.js
在 main.js 文件中編寫查詢代碼:
javascript const { Alchemy, Network } = require("alchemy-sdk");
// 配置訪問參數 const config = { apiKey: "您的API密鑰", network: Network.ETH_MAINNET };
const alchemy = new Alchemy(config); const address = "0xd8da6bf26964af9d7eed9e03e53415d37aa96045";
// 獲取代幣餘額 async function getTokenBalances() { const balances = await alchemy.core.getTokenBalances(address); console.log("代幣餘額數據:"); console.log(balances);
// 處理非零餘額的代幣 const nonZeroBalances = balances.tokenBalances.filter(token => { return token.tokenBalance !== "0"; });
console.log(該地址持有 ${nonZeroBalances.length} 種非零餘額的ERC-20代幣);
// 獲取更詳細的代幣信息 for (let token of nonZeroBalances) { const metadata = await alchemy.core.getTokenMetadata(token.contractAddress); console.log(代幣: ${metadata.name}); console.log(符號: ${metadata.symbol}); console.log(餘額: ${token.tokenBalance / Math.pow(10, metadata.decimals)}); console.log("-----"); } }
getTokenBalances();
運行查詢與結果分析
執行腳本查看結果:
bash node main.js
查詢結果將展示詳細的代幣信息,包括:
Alchemy 的優勢在於它不僅提供了基礎的餘額查詢,還支持元數據獲取、代幣過濾和餘額格式化等高級功能,讓開發者能輕鬆構建完整的資產管理功能。
Moralis: 企業級 Web3 API 服務
Moralis 提供了功能全面的 Web3 API 工具集,幫助開發者輕鬆實現區塊鏈功能集成。使用 Moralis 查詢 ERC-20 代幣餘額的步驟如下:
前期準備工作
環境配置
獲取 API 密鑰
代碼實現
創建一個新的 JavaScript 文件,編寫以下代碼:
javascript const Moralis = require("moralis").default;
// 初始化 Moralis async function initMoralis() { await Moralis.start({ apiKey: "您的API密鑰" }); }
// 查詢錢包中的代幣 async function fetchWalletTokens() { await initMoralis();
try { const address = "0xd8da6bf26964af9d7eed9e03e53415d37aa96045";
} catch (e) { console.error(e); } }
fetchWalletTokens();
執行查詢與結果解析
運行腳本獲取結果:
bash node moralis-tokens.js
查詢結果示例:
json [ { "token_address": "0x4d224452801aced8b2f0aebe155379bb5d594381", "name": "ApeCoin", "symbol": "APE", "logo": "", "thumbnail": "", "decimals": 18, "balance": "5000000000000000000" }, { "token_address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", "name": "Wrapped Ether", "symbol": "WETH", "logo": null, "thumbnail": null, "decimals": 18, "balance": "7050000000000000000" } ]
Moralis API 的響應提供了完整的代幣信息,包括名稱、符號、合約地址、徽標URL以及按照代幣最小單位表示的餘額。這些數據可以直接用於開發資產管理應用、投資組合分析工具或區塊鏈數據可視化系統。
API 服務功能對比
| 功能特性 | Chainbase | Alchemy | Moralis | |---------|----------|---------|---------| | 免費額度 | 有限請求次數 | 有免費套餐 | 有免費層級 | | 查詢速度 | 快速 | 極快 | 快速 | | 代幣元數據 | 支持 | 詳細支持 | 全面支持 | | 歷史數據 | 部分支持 | 支持 | 支持 | | 易用性 | 較高 | 中等 | 高 | | 適用場景 | 基礎查詢 | 專業開發 | 企業應用 |
通過這三種 API 服務,開發者和研究人員可以輕鬆獲取任何以太坊地址的 ERC-20 代幣持倉信息,爲資產分析、交易監控、稅務計算等應用場景提供可靠的數據支持。根據具體需求和技術偏好,選擇最適合的工具將有助於提升開發效率和用戶體驗。
這些工具不僅方便開發者構建應用,也爲投資者提供了重要的資產透明度,幫助他們更好地了解區塊鏈世界中的資產分布情況。無論是出於研究目的還是實際應用需求,掌握這些 API 的使用方法都將爲您的區塊鏈之旅增添一份便利。