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
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.lamports(u64, bắt buộc): Số lamport cần yêu cầu. (1 SOL = 1.000.000.000 lamport).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ườngresult 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:
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
requestAirdroptrả 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ụngconfirmTransaction(từ@solana/web3.js) hoặc thăm dògetSignatureStatusesđể chờ xác nhận.
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