Kurulum
rpc özelliği varsayılan olarak etkindir.
İstemciyi oluşturma
Tüm seçeneklerin ayarlı olduğu bir istemci:Builder yöntemleri
.url(url) — İsteklerin gönderileceği birincil uç nokta. Ayarlanmazsa SDK ORBITFLARE_RPC_URL ortam değişkenine bakar.
.urls(&[...]) — Birincil ve tüm yedekleri tek çağrıda ayarlar. İlk eleman birincil, kalanlar yedeklerdir.
.fallback_url(url) — Tek bir yedek uç nokta ekler. Birden fazla eklemek için birden çok kez çağırın. Birincil başarısız olduğunda SDK yedekleri sırayla dener.
.fallback_urls(&[...]) — fallback_url ile aynı; dilim alır.
.api_key(key) — OrbitFlare lisans anahtarınız. Ayarlanmazsa SDK ortamdan ORBITFLARE_LICENSE_KEY okur. Anahtar istek zamanında URL’ye eklenir, uç nokta içinde saklanmaz.
.commitment(level) — Tüm tiplenmiş yardımcılar için kullanılan varsayılan taahhüt düzeyi. Seçenekler: "processed", "confirmed", "finalized". Varsayılan: "confirmed".
.retry(policy) — Başarısız isteklerin nasıl yeniden deneneceğini denetler. initial_delay ilk yeniden denemeden önceki beklemedir. multiplier her denemede gecikmeyi ölçekler. max_delay geri çekilmeyi sınırlar. max_attempts uç nokta başına toplam yeniden denemeyi sınırlar (0 sonsuz anlamına gelir). Varsayılanlar: 100 ms başlangıç, 30 sn üst sınır, 2x çarpan, sınırsız deneme.
.timeout(duration) — Her tekil istek için HTTP zaman aşımı. Varsayılan: 30 saniye.
Kullanılabilir RPC yöntemleri
get_slot()
Geçerli slot numarasını döndürür.
get_balance(address)
Bir hesap için lamport cinsinden bakiyeyi döndürür.
get_account_info(address)
Hesap yoksa tam hesap verisini veya None döndürür. Veri base64 kodlanmıştır.
get_multiple_accounts(addresses)
Birden çok hesabı tek çağrıda getirir. Otomatik olarak 100’lük gruplara böler (Solana’nın istek başına limiti), bu yüzden istediğiniz kadar adres geçebilirsiniz.
get_latest_blockhash()
En son blockhash’i ve geçerliliğinin sona erdiği son blok yüksekliğini döndürür.
get_transaction(signature)
İmzasına göre onaylanmış bir işlemi getirir. Üst veriyle birlikte tam işlemi döndürür.
get_signatures_for_address(address, limit)
Bir adres için en yeniden eskiye yakın işlem imzalarını döndürür.
get_program_accounts(program_id)
Bir programa ait tüm hesapları döndürür. Çok fazla veri dönebilir.
get_recent_prioritization_fees(addresses)
Hesap kümesi için son öncelik ücretlerini döndürür. İşlem birimi fiyatlandırmasını tahmin etmek için kullanışlıdır.
send_transaction(tx_base64)
İmzalı işlemi ağa gönderir. Base64 kodlanmış seri işlemi alır. İşlem imzasını döndürür.
simulate_transaction(tx_base64)
İşlemi göndermeden simüle eder. Günlükleri, tüketilen işlem birimlerini ve varsa hataları döndürür.
get_token_accounts_by_owner(owner, mint, program_id)
Cüzdan için token hesaplarını döndürür. Belirli bir mint veya bir token programı kimliği verin. İkisi de None ise varsayılan SPL Token programı kullanılır.
get_transactions_for_address(address, options)
getSignaturesForAddress ve getTransaction çağrılarını tek istekte birleştiren OrbitFlare’a özgü yöntem. data dizisi ve isteğe bağlı bir sonraki sayfa için pagination_token içeren GetTransactionsResult döndürür.
Dört ayrıntı düzeyini (signatures, none, accounts, full), çift yönlü sıralamayı, zaman/slot filtrelerini, durum filtrelerini ve token hesabı dahilini destekler.
request(method, params)
Herhangi bir RPC yöntemini ada göre çağırır. SDK JSON-RPC zarfını oluşturur, yeniden deneme ve yedek uç noktayı yönetir ve result alanını döndürür.