Skip to main content
requestAirdrop RPC 메서드는 특정 계정에 SOL(람포트)을 에어드롭 요청할 수 있게 해줍니다. 이 메서드는 Devnet 및 Testnet과 같은 비메인넷 환경 전용으로, 개발자가 애플리케이션을 테스트하기 위해 무료 SOL을 제공하는 수도꼭지 역할을 합니다. 중요: 이 메서드는 Mainnet Beta에서 작동하지 않습니다.

일반적인 사용 사례

  • 테스트 지갑 자금 조달: Devnet 또는 Testnet에서 거래 수수료를 지불하고 프로그램을 배포하기 위한 SOL 획득.
  • 자동화된 테스트: 테스트 스위트를 실행하기 전에 테스트 계정에 충분한 SOL이 있는지 확인하는 스크립트에서 requestAirdrop를 사용할 수 있습니다.
  • 개발 및 실험: 개발 중 온체인 프로그램과 상호작용하기 위해 빠르게 SOL을 획득.

요청 매개변수

  1. pubkey (문자열, 필수): 베이스-58로 인코딩된 문자열로 제공된 에어드롭을 받을 계정의 공개 키.
  2. lamports (u64, 필수): 요청할 람포트의 양. (1 SOL = 1,000,000,000 람포트).
  3. options (객체, 선택적): 포함할 수 있는 선택적 구성 객체:
    • commitment (문자열, 선택적): 에어드롭 거래를 확인할 때 기다릴 커밋 수준 지정 (예: "finalized", "confirmed", "processed"). 생략하면 노드의 기본 에어드롭 커밋이 사용됩니다.

응답 구조

JSON-RPC 응답의 result 필드는 에어드롭 트랜잭션의 서명, 베이스-58로 인코딩된 단일 문자열을 나타냅니다. 예시 응답:
이 서명은 이후 getTransaction 또는 Solana 탐색기와 함께 사용하여 에어드롭 거래 상태를 추적하는 데 사용할 수 있습니다.

코드 예제

개발자 팁

  • 네트워크 특정: 이 메서드는 수도꼭지가 활성화된 테스트 네트워크(Devnet, Testnet)에서만 작동합니다. Mainnet Beta에서는 실패합니다.
  • 속도 제한: 에어드롭 수도꼭지는 오용을 방지하기 위해 종종 속도 제한이 있습니다. 짧은 시간에 너무 많은 요청을 하면 오류가 발생할 수 있습니다.
  • 금액 제한: 에어드롭당 또는 일정 시간당 요청할 수 있는 SOL의 양에 제한이 있을 수 있습니다.
  • 확인: requestAirdrop가 서명을 반환한 후에도 네트워크에서 거래를 처리하고 확인해야 합니다. confirmTransaction (@solana/web3.js에서) 또는 getSignatureStatuses를 반복 조회하여 확인을 기다릴 수 있습니다.
이 가이드는 Solana의 개발 네트워크에서 테스트 계정에 자금을 제공하기 위해 requestAirdrop 사용하는 방법을 설명합니다.

관련 메서드

getBalance

에어드롭을 받은 후 SOL 잔액 확인

getSignatureStatuses

에어드롭을 확인하기 위해 거래 상태를 조회