Langsung ke konten utama
Metode RPC getBlocksWithLimit memungkinkan Anda mengambil daftar nomor slot blok yang telah dikonfirmasi, dimulai dari slot tertentu dan mengembalikan hingga batas yang ditentukan. Ini berguna ketika Anda memerlukan sejumlah blok terkonfirmasi berikutnya dari titik tertentu dalam buku besar.
Hindari Pemrosesan Batch untuk Performa yang Lebih BaikPemrosesan metode arsip secara batch meningkatkan latensi secara signifikan. Batch yang berisi lebih dari 10 permintaan tidak diizinkan.

Kasus Penggunaan Umum

  • Mengambil Sejumlah Tetap Blok Berikutnya: Dapatkan sejumlah slot blok yang telah dikonfirmasi setelah slot awal tertentu.
  • Eksplorasi Blok dengan Paginasi: Ambil blok secara bertahap saat menganalisis segmen blockchain.
  • Pemantauan Blok Terbaru: Dapatkan N blok terakhir dari slot terbaru yang diketahui.

Parameter Permintaan

Metode getBlocksWithLimit menerima parameter berikut:
  1. start_slot (u64, wajib): Slot pertama yang akan dipertimbangkan (inklusif).
  2. limit (u64, wajib): Jumlah maksimum slot blok yang akan dikembalikan. Jumlah total slot yang dikueri (dari start_slot hingga limit blok setelahnya) tidak boleh melebihi 500.000 slot.
  3. commitment (string, opsional): Menentukan tingkat komitmen untuk kueri. Jika dihilangkan, komitmen default node akan digunakan. Parameter ini diteruskan sebagai satu-satunya bidang dalam objek konfigurasi sebagai parameter terakhir.

Struktur Respons

Bidang result dari respons JSON-RPC akan berupa array bilangan bulat u64. Setiap bilangan bulat dalam array mewakili nomor slot blok yang telah dikonfirmasi, dimulai dari start_slot hingga limit yang ditentukan.
  • Contoh: Jika start_slot adalah 5 dan limit adalah 3, salah satu kemungkinan hasilnya adalah [5, 6, 7].

Contoh

1. Mendapatkan Blok dalam Jumlah Terbatas dari Slot Awal

Contoh ini mengambil daftar hingga 5 slot blok yang telah dikonfirmasi, dimulai dari slot 280000000.

2. Mendapatkan Blok dengan Batas dan Tingkat Komitmen Tertentu

Contoh ini mengambil hingga 3 blok, dimulai dari slot 290000000 dengan menggunakan tingkat komitmen finalized.

Tips untuk Developer

  • Penjelasan Rentang: Parameter limit menentukan jumlah maksimum slot blok yang akan dikembalikan. Batasan 500.000 slot berlaku untuk rentang konseptual yang dipindai (yaitu, dari start_slot hingga start_slot + limit - 1). Pastikan rentang konseptual ini tidak melebihi 500.000 slot, meskipun jumlah blok aktual yang ditemukan dan dikembalikan dalam rentang tersebut lebih sedikit.
  • Ketersediaan Data Node: Node mungkin tidak menyimpan informasi untuk semua slot historis. start_slot yang sangat lama mungkin mengembalikan lebih sedikit blok daripada limit yang ditentukan, atau array kosong, tergantung pada retensi buku besar node.
  • Komitmen Blok: Dalam Alpenglow, confirmed dan finalized mengembalikan blok yang sama dan telah dikomitmenkan secara permanen; gunakan finalized untuk kode baru. Node yang berbeda mungkin masih memberikan hasil berbeda untuk sementara waktu karena keterlambatan propagasi.
  • Kekhususan Kasus Penggunaan: getBlocksWithLimit ideal ketika Anda mengetahui titik awal dan memerlukan jumlah tetap blok berikutnya. Jika Anda memerlukan semua blok dalam rentang slot yang diketahui, getBlocks mungkin lebih sesuai.
Panduan ini memberikan ikhtisar yang jelas tentang cara menggunakan metode RPC getBlocksWithLimit untuk mencantumkan sejumlah slot blok tertentu yang telah dikomitmenkan secara permanen di jaringan Solana.

Metode Terkait

getBlocks

Dapatkan semua blok dalam suatu rentang slot

getBlock

Dapatkan informasi mendetail untuk blok tertentu