Khám phá tài sản Ethereum: Cách truy vấn tất cả các Token ERC-20 trong Ví tiền

Trong thế giới blockchain, việc kiểm tra số dư Token ERC-20 trong Ví tiền của mình tương đối đơn giản - chỉ cần mở ứng dụng Ví tiền, bạn có thể thấy tất cả thông tin số dư của các Token đã nhập. Tuy nhiên, khi chúng ta cần tra cứu Token mà địa chỉ của người khác đang nắm giữ, vấn đề trở nên phức tạp, đặc biệt là khi không có quyền truy cập trực tiếp vào Ví tiền của họ.

Đối với nhà đầu tư cá nhân, nhà phân tích doanh nghiệp hoặc nhà nghiên cứu blockchain, việc nhanh chóng truy cập dữ liệu nắm giữ token của một địa chỉ cụ thể là một khả năng quan trọng. May mắn thay, cơ sở hạ tầng blockchain hiện đại cung cấp nhiều giải pháp API, cho phép chúng ta truy vấn hiệu quả tình hình nắm giữ token ERC-20 của bất kỳ địa chỉ Ethereum nào.

Bài viết này sẽ giới thiệu chi tiết về ba dịch vụ API phổ biến - Chainbase, Alchemy và Moralis, mỗi dịch vụ đều cung cấp giải pháp chuyên nghiệp để truy vấn Token ERC-20 theo địa chỉ cụ thể. Chúng tôi sẽ trình bày cách thức thực hiện chức năng truy vấn tài sản thông qua các công cụ này một cách thân thiện với nhà phát triển.

Chainbase: Lựa chọn hiệu quả cho việc tra cứu dữ liệu Blockchain

Chainbase là một cơ sở hạ tầng tương tác Blockchain Web3 mạnh mẽ, dịch vụ API của nó giúp các nhà phát triển truy cập và tận dụng dữ liệu Blockchain nhanh chóng. Chỉ với vài bước đơn giản, chúng ta có thể kiểm tra tình hình nắm giữ Token của bất kỳ Địa chỉ nào.

Cài đặt tài khoản và chuẩn bị công việc

  1. Tạo tài khoản và lấy API Key

    • Truy cập trang web Chainbase để đăng ký tài khoản miễn phí
    • Đăng nhập và vào bảng điều khiển, tạo dự án mới
    • Lấy và lưu trữ khóa API, đây là chứng chỉ cần thiết cho các truy vấn tiếp theo.
  2. Chuẩn bị môi trường phát triển

    • Đảm bảo môi trường phát triển của bạn đã cài đặt Node.js
    • Sử dụng npm để cài đặt thư viện Axios: npm install axios --save

thực hiện chức năng tra cứu

Sử dụng JavaScript để tương tác với API Chainbase, lấy số dư Token ERC-20 của địa chỉ đã chỉ định:

javascript const axios = require('axios');

async function getERC20Tokens() { thử { const response = await axios.get( ' { params: { chain_id: '1', // mạng chính Ethereum địa chỉ: '0xd8da6bf26964af9d7eed9e03e53415d37aa96045', // Ví dụ địa chỉ giới hạn: 5 // Trả về 5 Token đầu tiên }, headers: { 'x-api-key': 'API key của bạn' // Thay thế bằng khóa thực của bạn } } ); console.log(JSON.stringify(response.data, null, 2)); } catch (error) { console.error('查询失败:', error); } }

getERC20Tokens();

xem kết quả tra cứu

Sau khi chạy script, bạn sẽ thấy phản hồi JSON giống như bên dưới, hiển thị chi tiết các Token ERC-20 mà địa chỉ chỉ định nắm giữ:

{ "data": [ { "chain_id": "1", "địa chỉ": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "contract_address": "0xc00e94cb662c3520282e6f5717214004a7f26888", "name": "Compound", "symbol": "COMP", "decimals": 18, "balance": "10472650474472796", "balance_in_usd": 0.71 }, ...thông tin Token thêm... ] }

Dữ liệu phản hồi chứa địa chỉ hợp đồng, tên, ký hiệu, số chữ số thập phân, số dư và giá trị đô la của mỗi token.

Alchemy: Nền tảng phát triển Blockchain chuyên nghiệp

Alchemy là nền tảng hàng đầu trong lĩnh vực phát triển blockchain, cung cấp các công cụ API mạnh mẽ để đọc và ghi dữ liệu blockchain. Dưới đây là các bước chi tiết để kiểm tra số dư token ERC-20 thông qua Alchemy:

Chuẩn bị môi trường và cài đặt tài khoản

  1. Cài đặt công cụ cần thiết

    • Cài đặt Node.js và NPM
    • Tạo thư mục dự án và khởi tạo môi trường
  2. Nhận chứng chỉ truy cập Alchemy

    • Đăng ký tài khoản Alchemy
    • Tạo ứng dụng mới, chọn mạng chính Ethereum
    • Lưu URL HTTP và API Key của ứng dụng

Cài đặt và phát triển dự án

Tạo cấu trúc dự án và cài đặt phụ thuộc:

bash mkdir eth-balance cd eth-balance npm init -y npm install alchemy-sdk chạm vào main.js

Viết mã truy vấn trong tệp main.js:

javascript const { Alchemy, Network } = require("alchemy-sdk");

// Cấu hình tham số truy cập const config = { apiKey: "Khóa API của bạn", mạng: Network.ETH_MAINNET };

const alchemy = new Alchemy(config); const địa chỉ = "0xd8da6bf26964af9d7eed9e03e53415d37aa96045";

// Lấy số dư Token async function getTokenBalances() { const balances = await alchemy.core.getTokenBalances(address); console.log("Số dư Token:"); console.log(balances);

// Xử lý Token có số dư khác không const nonZeroBalances = balances.tokenBalances.filter(token => { return token.tokenBalance !== "0"; });

console.log(Địa chỉ này nắm giữ ${nonZeroBalances.length} loại Token ERC-20 có số dư khác không);

// Lấy thông tin chi tiết hơn về Token cho (let Token của nonZeroBalances) { const metadata = await alchemy.core.getTokenMetadata(token.contractAddress); console.log(Token: ${metadata.name}); console.log(ký hiệu: ${metadata.symbol}); console.log(số dư: ${token.tokenBalance / Math.pow(10, metadata.decimals)}); console.log("-----"); } }

getTokenBalances();

Chạy truy vấn và phân tích kết quả

Thực thi kịch bản để xem kết quả:

bash node main.js

Kết quả tra cứu sẽ hiển thị thông tin chi tiết về Token, bao gồm:

  • Tên và ký hiệu Token
  • Địa chỉ hợp đồng
  • Số dư sau khi định dạng
  • Dữ liệu siêu dữ liệu Token (như số chữ số thập phân)

Ưu điểm của Alchemy là nó không chỉ cung cấp khả năng kiểm tra số dư cơ bản, mà còn hỗ trợ lấy dữ liệu siêu dữ liệu, lọc token và định dạng số dư, giúp các nhà phát triển có thể dễ dàng xây dựng chức năng quản lý tài sản hoàn chỉnh.

Moralis: Dịch vụ API Web3 cấp doanh nghiệp

Moralis cung cấp bộ công cụ API Web3 toàn diện, giúp các nhà phát triển dễ dàng tích hợp các chức năng blockchain. Các bước để sử dụng Moralis truy vấn số dư Token ERC-20 như sau:

Công việc chuẩn bị ban đầu

  1. Cấu hình môi trường

    • Cài đặt Node.js v14+ và NPM
    • Thiết lập biến môi trường hệ thống
  2. Lấy khóa API

    • Tạo tài khoản Moralis
    • Đăng nhập và tìm "Web3 API Key" trong "Cài đặt" > "Bí mật"
    • Sao chép khóa để dự phòng

thực hiện mã

Tạo một tệp JavaScript mới, viết mã sau:

javascript const Moralis = require("moralis").default;

// Khởi tạo Moralis async function initMoralis() { await Moralis.start({ apiKey: "Khóa API của bạn" }); }

// Truy vấn Token trong Ví tiền async function fetchWalletTokens() { await initMoralis();

thử { const address = "0xd8da6bf26964af9d7eed9e03e53415d37aa96045";

const response = await Moralis.EvmApi.token.getWalletTokenBalances({
  địa chỉ: địa chỉ,
  chain: "0x1" // mạng chính Ethereum
});

console.log(JSON.stringify(response.toJSON(), null, 2));

} catch (e) { console.error(e); } }

fetchWalletTokens();

Thực hiện truy vấn và phân tích kết quả

Chạy kịch bản để nhận kết quả:

bash node moralis-tokens.js

Ví dụ về kết quả tra cứu:

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" } ]

Phản hồi của Moralis API cung cấp thông tin đầy đủ về Token, bao gồm tên, ký hiệu, địa chỉ hợp đồng, URL biểu tượng và số dư được biểu diễn theo đơn vị tối thiểu của Token. Dữ liệu này có thể được sử dụng trực tiếp để phát triển ứng dụng quản lý tài sản, công cụ phân tích danh mục đầu tư hoặc hệ thống trực quan hóa dữ liệu Blockchain.

So sánh chức năng dịch vụ API

| Tính năng | Chainbase | Alchemy | Moralis | |---------|----------|---------|---------| | Hạn mức miễn phí | Số lần yêu cầu có hạn | Có gói miễn phí | Có cấp miễn phí | | Tốc độ tra cứu | Nhanh | Cực nhanh | Nhanh | | Token Metadata | Hỗ trợ | Hỗ trợ chi tiết | Hỗ trợ toàn diện | | Dữ liệu lịch sử | Hỗ trợ một phần | Hỗ trợ | Hỗ trợ | | Tính dễ sử dụng | Cao | Trung bình | Cao | | Bối cảnh áp dụng | Tra cứu cơ bản | Phát triển chuyên nghiệp | Ứng dụng doanh nghiệp |

Thông qua ba dịch vụ API này, các nhà phát triển và nhà nghiên cứu có thể dễ dàng lấy thông tin về vị trí nắm giữ Token ERC-20 của bất kỳ địa chỉ Ethereum nào, cung cấp dữ liệu đáng tin cậy cho các trường hợp ứng dụng như phân tích tài sản, giám sát giao dịch, tính toán thuế, v.v. Việc chọn công cụ phù hợp nhất theo nhu cầu cụ thể và sở thích kỹ thuật sẽ giúp nâng cao hiệu quả phát triển và trải nghiệm người dùng.

Những công cụ này không chỉ giúp các nhà phát triển xây dựng ứng dụng mà còn cung cấp cho các nhà đầu tư sự minh bạch quan trọng về tài sản, giúp họ hiểu rõ hơn về sự phân bố tài sản trong thế giới Blockchain. Dù là vì mục đích nghiên cứu hay nhu cầu thực tế, việc nắm vững cách sử dụng những API này sẽ mang lại sự thuận tiện cho hành trình Blockchain của bạn.

ETH-1.35%
COMP-1.57%
APE0.96%
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Đăng lại
  • Retweed
Bình luận
0/400
Không có bình luận
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)