Ana içeriğe atla

Parametreler

pubkey
string
gerekli
Token hesabının açık anahtarı (base-58 kodlu)
config
object
Şunları içeren yapılandırma nesnesi:
commitment
string
Onay seviyesi (processed, confirmed, finalized)

Yanıt

result
object
Şunları içeren nesne:
context
object
slot
number
İsteğin işlendiği slot
value
object
amount
string
Ham token miktarı (dize olarak)
decimals
number
Token mint’i için yapılandırılmış ondalık basamak sayısı
uiAmount
number
Ondalık basamakları hesaba katan float olarak token miktarı
uiAmountString
string
Ondalık basamakları hesaba katan dize olarak token miktarı

Kod Örnekleri

Temel İstek

curl https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getTokenAccountBalance",
  "params": [
    "4vJ9JU1bJJE96FWSJKvHsmmFADCg4gpZQff4P3bkLZj"
  ]
}'

web3.js Kullanımı

import { Connection, PublicKey } from '@solana/web3.js';

const connection = new Connection('https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY');

// Get token account balance
const tokenAccount = new PublicKey('4vJ9JU1bJJE96FWSJKvHsmmFADCg4gpZQff4P3bkLZj');
const balance = await connection.getTokenAccountBalance(tokenAccount);
console.log('Token balance:', balance);

// Get token account balance with analysis
async function getTokenAccountBalanceWithAnalysis(
  tokenAccount: PublicKey,
  config?: { commitment?: string }
) {
  const balance = await connection.getTokenAccountBalance(tokenAccount, config);
  
  return {
    balance,
    analysis: {
      rawAmount: balance.value.amount,
      uiAmount: balance.value.uiAmount,
      uiAmountString: balance.value.uiAmountString,
      decimals: balance.value.decimals,
      metadata: {
        timestamp: Date.now(),
        commitment: config?.commitment
      }
    }
  };
}

Notlar

  1. Bir token hesabının token bakiyesini döndürür
  2. Bakiye hem ham hem de kullanıcı dostu formatlarda döndürülür
  3. Mevcut durumdan okuduğu için yanıt anında gelir
  4. Bakiye, token transferleri ve diğer işlemlerle değişebilir
  5. Hesap geçerli bir token hesabı olmalıdır

En İyi Uygulamalar

  1. İhtiyacınıza göre uygun onay seviyesini kullanın
  2. RPC yükünü azaltmak için uygun durumlarda sonuçları önbelleğe alın
  3. Token bakiyelerindeki değişiklikleri izleyin
  4. Gerçek zamanlı güncellemeler için WebSocket aboneliği kullanmayı düşünün
  5. Ağ hatalarını yönetin ve gerektiğinde yeniden deneyin

Yaygın Hatalar

KodMesajÇözüm
-32601Method not foundBir Solana RPC düğümüne bağlı olduğunuzu doğrulayın
-32602Invalid paramsToken hesabı açık anahtarını kontrol edin
-32007Token account not foundToken hesabının var olduğunu doğrulayın
-32008Invalid token accountHesabın geçerli bir token hesabı olduğunu doğrulayın