Ana içeriğe atla

Parametreler

Bu metod herhangi bir parametre almaz.

Yanıt

result
object

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": "getInflationRate"
}'

web3.js Kullanımı

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

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

// Get current inflation rate
const inflationRate = await connection.getInflationRate();
console.log('Total inflation:', inflationRate.total);
console.log('Validator inflation:', inflationRate.validator);
console.log('Foundation inflation:', inflationRate.foundation);
console.log('Current epoch:', inflationRate.epoch);

// Calculate staking APY
async function calculateStakingAPY(totalStaked: number, totalSupply: number) {
  const inflationRate = await connection.getInflationRate();
  const validatorAPY = (inflationRate.validator * totalSupply) / totalStaked;
  
  return {
    validatorAPY,
    totalInflation: inflationRate.total,
    validatorInflation: inflationRate.validator,
    foundationInflation: inflationRate.foundation,
    epoch: inflationRate.epoch
  };
}

Notlar

  1. Mevcut enflasyon oranını ve dağılımını döndürür
  2. Toplam enflasyon doğrulayıcılar ve vakıf arasında paylaştırılır
  3. Enflasyon oranları yüzde olarak ifade edilir
  4. Mevcut durumdan okuduğu için yanıt anında gelir
  5. Enflasyon oranları dönemler arasında değişebilir

En İyi Uygulamalar

  1. Mevcut ağ enflasyonunu anlamak için bu metodu kullanın
  2. RPC yükünü azaltmak için uygun durumlarda sonuçları önbelleğe alın
  3. Enflasyonun staking ödülleri üzerindeki etkisini göz önünde bulundurun
  4. Enflasyon oranlarındaki değişiklikleri izleyin
  5. Diğer enflasyonla ilgili metodlarla birlikte kullanın

Yaygın Hatalar

KodMesajÇözüm
-32601Method not foundBir Solana RPC düğümüne bağlı olduğunuzu doğrulayın
-32007Inflation information unavailableDüğüm başlatılıyor veya senkronize ediliyor olabilir

Kullanım Senaryoları

  1. Enflasyon Takibi
    interface InflationHistory {
      epoch: number;
      total: number;
      validator: number;
      foundation: number;
      timestamp: number;
    }
    
    async function trackInflationHistory(
      epochs: number = 10
    ): Promise<InflationHistory[]> {
      const history: InflationHistory[] = [];
      const currentEpoch = (await connection.getEpochInfo()).epoch;
      
      for (let i = 0; i < epochs; i++) {
        const epoch = currentEpoch - i;
        const inflationRate = await connection.getInflationRate();
        
        history.push({
          epoch: inflationRate.epoch,
          total: inflationRate.total,
          validator: inflationRate.validator,
          foundation: inflationRate.foundation,
          timestamp: Date.now()
        });
        
        // Add delay to avoid rate limiting
        await new Promise(resolve => setTimeout(resolve, 1000));
      }
      
      return history;
    }
    
  2. Staking Analizi
    interface StakingMetrics {
      currentAPY: number;
      projectedAPY: number;
      totalStaked: number;
      totalSupply: number;
      inflationRate: number;
      validatorInflation: number;
    }
    
    async function analyzeStakingMetrics(): Promise<StakingMetrics> {
      const inflationRate = await connection.getInflationRate();
      const supply = await connection.getSupply();
      const voteAccounts = await connection.getVoteAccounts();
      
      const totalStaked = voteAccounts.current
        .concat(voteAccounts.delinquent)
        .reduce((sum, account) => sum + account.activatedStake, 0);
      
      const currentAPY = (inflationRate.validator * supply.value.total) / totalStaked;
      
      // Project future APY based on current trends
      const projectedAPY = currentAPY * 0.95; // Assuming 5% decrease
      
      return {
        currentAPY,
        projectedAPY,
        totalStaked,
        totalSupply: supply.value.total,
        inflationRate: inflationRate.total,
        validatorInflation: inflationRate.validator
      };
    }