Ana içeriğe atla
Change page

JavaScript API kütüphaneleri

Sayfanın son güncellenme tarihi: 25 Şubat 2026

Bir web uygulamasının Ethereum blokzinciri ile etkileşime girebilmesi (ör. blokzincir verilerini okumak ve/veya ağa işlem göndermek) için bir Ethereum düğümüne bağlanması gerekir.

Bu amaçla her Ethereum istemcisi JSON-RPC spesifikasyonunu uygular, böylece uygulamaların güvenebileceği tek tip bir yöntemler seti bulunur.

Eğer bir Ethereum düğümüne bağlanmak için JavaScript kullanmak istiyorsanız, düz JavaScript'i kullanmak mümkündür ancak ekosistem içinde bunu çok daha kolay hâle getiren birkaç kolaylık kütüphanesi bulunur. Bu kütüphanelerle geliştiriciler, Ethereum ile etkileşime giren JSON RPC taleplerini (arka planda) başlatmak için sezgisel ve tek satırlı yöntemler yazabilirler.

Birleşim'den bu yana bir düğümü çalıştırmak için birbirine bağlı iki Ethereum yazılımı parçasının (bir yürütüm istemcisi ve bir mutabakat istemcisi) gerektiğini lütfen unutmayın. Lütfen düğümünüzün hem bir yürütüm hem de fikir birliği istemcisini içerdiğinden emin olun. Düğümünüz yerel makinenizde değilse (ör. düğümünüz bir AWS örneğinde çalışıyorsa), öğreticideki IP adreslerini buna göre güncelleyin. Daha fazla bilgi için lütfen düğüm çalıştırma sayfamıza bakın.

Ön Koşullar

JavaScript'i anlamanın yanı sıra Ethereum yığınını ve Ethereum istemcilerini anlamak da faydalı olabilir.

Neden bir kütüphane kullanılır?

Bu kütüphaneler, bir Ethereum düğümü ile doğrudan etkileşim kurmanın karmaşıklığının çoğunu ortadan kaldırır. Ayrıca, bir geliştirici olarak Ethereum istemcilerinin karmaşıklıkları ile daha az zaman harcayarak ve uygulamanızın benzersiz işlevselliğine daha fazla zaman ayırabilmeniz için yardımcı işlevler (örneğin, ETH'yi Gwei'ye dönüştürmek) sağlarlar.

Kütüphane özellikleri

Ethereum düğümlerine bağlanma

Bu kütüphaneler, sağlayıcıları kullanarak JSON-RPC, INFURA, Etherscan, Alchemy veya MetaMask üzerinden Ethereum'a bağlanmanıza ve Ethereum verilerini okumanıza olanak tanır.

Uyarı: Web3.js 4 Mart 2025'te arşivlendi. Duyuruyu okuyun (opens in a new tab). Yeni projeler için ethers.js (opens in a new tab) veya viem (opens in a new tab) gibi alternatif kütüphaneleri kullanmayı düşünün.

Ethers örneği

// Bir BrowserProvider, MetaMask'ın her sayfaya window.ethereum olarak eklediği
// standart bir Web3 sağlayıcısını sarmalar
const provider = new ethers.BrowserProvider(window.ethereum)

// MetaMask eklentisi ayrıca ether göndermek için işlemleri imzalamaya
// ve blokzincirdeki durumu değiştirmek için ödeme yapmaya olanak tanır.
// Bunun için hesap imzalayıcısına ihtiyacımız var...
const signer = provider.getSigner()

Web3js örneği

Kurulduktan sonra blok zinciri aşağıdakiler için sorgulayabileceksiniz:

  • blok numaraları
  • gaz tahminleri
  • akıllı sözleşme olayları
  • ağ kimliği
  • ve dahası...

Cüzdan işlevselliği

Bu kütüphaneler size cüzdan oluşturma, anahtarları yönetme ve işlemleri imzalama işlevselliği sunar.

İşte Ethers'dan bir örnek

Tüm belgeleri okuyun (opens in a new tab)

Kurulumdan sonra şunları yapabileceksiniz:

  • hesap oluşturabilirsiniz
  • işlem gönderebilirsiniz
  • işlemleri imzalayabilirsiniz
  • ve dahası...

Akıllı sözleşme işlevleriyle etkileşim kurma

Javascript istemci kütüphaneleri, derlenmiş bir sözleşmenin Uygulama İkili Arayüzünü (ABI) okuyarak uygulamanızın akıllı sözleşme fonksiyonlarını çağırmasına olanak tanır.

ABI, esasen sözleşmenin işlevlerini bir JSON formatında açıklar ve bunu normal bir JavaScript nesnesi gibi kullanmanıza izin verir.

Yani aşağıdaki Solidity sözleşmesi:

Aşağıdaki JSON ile sonuçlanır:

Bu, şunları yapabileceğiniz anlamına gelir:

  • Akıllı sözleşmeye bir işlem gönderin ve yöntemini uygulayın
  • EVM'de yürütüldüğünde bir yöntem yürütmesinin harcayacağı gazı tahmin etme çağrısı
  • Sözleşme dağıtmak
  • Ve daha fazlası...

Yardımcı fonksiyonlar

Yardımcı fonksiyonlar, Ethereum ile oluşturmayı biraz daha kolaylaştıran kullanışlı kısayollar sunar.

ETH değerleri varsayılan olarak Wei cinsindendir. 1 ETH = 1.000.000.000.000.000.000 WEI – bu, çok sayıda sayıyla uğraştığınız anlamına gelir! web3.utils.toWei sizin için ether'i Wei'ye dönüştürür.

Ve ethers cinsinden şöyle görünür:

// Get the balance of an account (by address or ENS name)
balance = await provider.getBalance("ethers.eth")
// { BigNumber: "2337132817842795605" }

// Often you will need to format the output for the user
// which prefer to see values in ether (instead of wei)
ethers.utils.formatEther(balance)
// '2.337132817842795605'

Mevcut kütüphaneler

Web3.js - Ethereum JavaScript API'si.

Ethers.js - JavaScript ve TypeScript'te eksiksiz Ethereum cüzdanı uygulaması ve yardımcı programları.

The Graph - Ethereum ve IPFS verilerini dizine eklemek ve GraphQL kullanarak sorgulamak için bir protokol.

Alchemy SDK - Gelişmiş API'lere sahip Ethers.js için bir sarmalayıcı.

viem - Ethereum için TypeScript Arayüzü.

Drift - Dahili önbelleğe alma, kancalar ve test taklitleri içeren TypeScript meta kütüphanesi.

Daha fazla kaynak

Size yardımcı olan bir topluluk kaynağı mı biliyorsunuz? Bu sayfayı düzenleyin ve onu ekleyin!

Bu makale faydalı oldu mu?