Skip to main content
Phương thức RPC requestAirdrop cho phép bạn yêu cầu airdrop SOL (lamport) đến một tài khoản được chỉ định. Phương thức này chỉ dành riêng cho các môi trường không phải mainnet như Devnet và Testnet, nơi phương thức này đóng vai trò là faucet cung cấp SOL miễn phí cho nhà phát triển để kiểm thử ứng dụng. Quan trọng: Phương thức này sẽ không hoạt động trên Mainnet Beta.

Các trường hợp sử dụng phổ biến

  • Cấp vốn cho ví kiểm thử: Nhận SOL để thanh toán phí giao dịch và triển khai chương trình trên Devnet hoặc Testnet.
  • Kiểm thử tự động: Các tập lệnh có thể sử dụng requestAirdrop để đảm bảo tài khoản kiểm thử có đủ SOL trước khi chạy các bộ kiểm thử.
  • Phát triển và thử nghiệm: Nhanh chóng nhận SOL để tương tác với các chương trình on-chain trong quá trình phát triển.

Tham số yêu cầu

  1. pubkey (chuỗi, bắt buộc): Khóa công khai của tài khoản sẽ nhận lamport được airdrop, được cung cấp dưới dạng chuỗi mã hóa base-58.
  2. lamports (u64, bắt buộc): Số lamport cần yêu cầu. (1 SOL = 1.000.000.000 lamport).
  3. options (đối tượng, tùy chọn): Đối tượng cấu hình tùy chọn có thể bao gồm:
    • commitment (chuỗi, tùy chọn): Chỉ định mức cam kết cần chờ khi xác nhận giao dịch airdrop (ví dụ: "finalized", "confirmed", "processed"). Nếu bỏ qua, hệ thống sẽ sử dụng mức cam kết mặc định của nút cho các airdrop.

Cấu trúc phản hồi

Trường result trong phản hồi JSON-RPC là một chuỗi đơn đại diện cho chữ ký giao dịch của airdrop, được mã hóa bằng base-58. Phản hồi mẫu:
Sau đó, bạn có thể sử dụng chữ ký này với getTransaction hoặc trình khám phá Solana để theo dõi trạng thái của giao dịch airdrop.

Ví dụ mã

Mẹo dành cho nhà phát triển

  • Theo từng mạng: Phương thức này chỉ hoạt động trên các mạng kiểm thử (Devnet, Testnet) có bật faucet. Phương thức sẽ thất bại trên Mainnet Beta.
  • Giới hạn tốc độ: Các faucet airdrop thường bị giới hạn tốc độ để ngăn chặn hành vi lạm dụng. Nếu gửi quá nhiều yêu cầu trong thời gian ngắn, bạn có thể nhận được lỗi.
  • Giới hạn số lượng: Có thể có giới hạn về lượng SOL bạn được phép yêu cầu cho mỗi lần airdrop hoặc trong mỗi khoảng thời gian.
  • Xác nhận: Sau khi requestAirdrop trả về một chữ ký, giao dịch vẫn cần được mạng xử lý và xác nhận. Bạn có thể sử dụng confirmTransaction (từ @solana/web3.js) hoặc thăm dò getSignatureStatuses để chờ xác nhận.
Hướng dẫn này giải thích cách sử dụng requestAirdrop để cấp vốn cho các tài khoản kiểm thử trên mạng phát triển của Solana.

Các phương thức liên quan

getBalance

Kiểm tra số dư SOL sau khi nhận airdrop

getSignatureStatuses

Thăm dò trạng thái giao dịch để xác nhận airdrop