requestAirdrop kannst du einen Airdrop von SOL (Lamports) an ein bestimmtes Konto anfordern. Diese Methode ist ausschließlich für Umgebungen außerhalb des Mainnet wie Devnet und Testnet vorgesehen. Dort dient sie als Faucet, die Entwicklern kostenloses SOL zum Testen ihrer Anwendungen bereitstellt.
Wichtig: Diese Methode funktioniert nicht auf Mainnet Beta.
Häufige Anwendungsfälle
- Test-Wallets finanzieren: Fordere SOL an, um Transaktionsgebühren zu bezahlen und Programme auf Devnet oder Testnet bereitzustellen.
- Automatisierte Tests: Skripte können
requestAirdropverwenden, um sicherzustellen, dass Testkonten genügend SOL besitzen, bevor Testsuiten ausgeführt werden. - Entwicklung und Experimente: Erhalte schnell SOL, um während der Entwicklung mit On-Chain-Programmen zu interagieren.
Parameter für den request
pubkey(string, erforderlich): Der öffentliche Schlüssel des Kontos, das die Lamports aus dem Airdrop erhält. Gib ihn als Base58-codierten String an.lamports(u64, erforderlich): Die anzufordernde Menge an Lamports. (1 SOL = 1.000.000.000 Lamports).options(object, optional): Ein optionales Konfigurationsobjekt, das Folgendes enthalten kann:commitment(string, optional): Gibt die Stufe für das commitment an, auf die beim Bestätigen der Airdrop-Transaktion gewartet wird (z. B."finalized","confirmed","processed"). Wenn du diesen Wert weglässt, wird das standardmäßige commitment des node für Airdrops verwendet.
Struktur der response
Das Feldresult in der JSON-RPC-response ist ein einzelner String. Er enthält die Base58-codierte Transaktionssignatur des Airdrops.
Beispiel-response:
getTransaction oder einem Solana-Explorer verwenden, um den Status der Airdrop-Transaktion zu verfolgen.
Codebeispiele
Tipps für Entwickler
- Netzwerkspezifisch: Diese Methode funktioniert nur in Testnetzwerken (Devnet, Testnet), in denen ein Faucet aktiviert ist. Auf Mainnet Beta schlägt sie fehl.
- Rate limits: Airdrop-Faucets unterliegen häufig rate limits, um Missbrauch zu verhindern. Wenn du in kurzer Zeit zu viele requests sendest, erhältst du möglicherweise Fehler.
- Mengenbegrenzungen: Möglicherweise ist die Menge an SOL begrenzt, die du pro Airdrop oder Zeitraum anfordern kannst.
- Bestätigung: Nachdem
requestAirdropeine Signatur zurückgegeben hat, muss das Netzwerk die Transaktion noch verarbeiten und bestätigen. Du kannstconfirmTransaction(aus@solana/web3.js) verwenden odergetSignatureStatuseswiederholt abfragen, um auf die Bestätigung zu warten.
requestAirdrop deine Testkonten in den Solana-Entwicklungsnetzwerken finanzierst.
Verwandte Methoden
getBalance
Prüfe den SOL-Kontostand, nachdem du einen Airdrop erhalten hast
getSignatureStatuses
Frage den Transaktionsstatus wiederholt ab, um den Airdrop zu bestätigen