Web3.js
Web3.js de EVM üzerindeki blockchain ağları ile etkileşim kurmak için kullanılan bir diğer popüler JavaScript kütüphanesidir.
DApp (Decentralized Application) geliştiricileri tarafından, smart contract'ler ile etkileşim, hesapların yönetimi, işlemlerin gönderilmesi ve blockchain verilerinin alınması gibi görevler için yaygın olarak kullanılır.
1 - Kurulum
Web3.js kütüphanesinin kurulumu için öncelikle bağımlılıkları projenize import etmeniz gerekmektedir.
2 - Web3.js ile Temel İşlemler
Web3.js'i Projeye Dahil Etmek
Web3.js kurulumu yaptıktan sonra akıllı sözleşmenizin en üstünde kullandığınız frameworke göre (react.js, next.js, vanillaJS) aşağıdaki komutlardan uygun olanını kullanabilirsiniz.
Bir Ethereum Cüzdanı Oluşturma
Akıllı sözleşmemizde create()
fonksiyonu ile yeni bir cüzdan oluşturabiliriz.
Bir Cüzdanı Mevcut Bir Private Key ile İçe Aktarma
Oluşturduğumuz cüzdan adresini ve private key'i import etmemiz gerektiği durumlar olabilir.
Bir Ethereum Node'una Bağlanma
Web3.js, farklı provider'larla çalışabilir. Örneğin, Infura veya Alchemy gibi bir servis sağlayıcı ile Ethereum blockchain'e bağlanabilirsiniz.
Bir Hesap Bakiyesini Kontrol Etme
Bir Varlık Gönderme İşlemi/Transaction
Metamask arayüzünü kullanmadan kontrat üzerinden bakiye transferi de yapabilirsiniz.
Bir Smart Contract ile Etkileşim
Kullanıcılarınız akıllı sözleşmeleriniz ile sitenin ön yüzünden etkileşime geçebilmesi için web3.js de mükemmel bir araçtır. Tek lazım olan akıllı sözleşme adresi ve ABI kodu.
Sözleşmenizi deploy ederken otomatik oluşturulan bir ABI kodu
bulunmaktadır. Bu ABI kodunu ister contractABI
kısmına ekleyebilir isterseniz de bunu harici bir dosyadan çağırabilirsiniz.
3 - Web3.js Ekstra Araçlar ve Yardımcı Fonksiyonlar
BigNumber Kullanımı
Akıllı sözleşmelerde birimler ifade edilirken Wei
kullanılır. Bu nedenle sayılar çok büyük olmakta ve bu yüzden BigNumber hatası almaktayız.
1 ether = 1000000000000000000 wei (19 hane)
Burada Web3.js'in bize sağladığı yerleşik BigNumber dönüşümü sayesinde büyük sayılarla çalışabilmekteyiz.
Event Dinleme
Bir akıllı sözleşmenin veya bireysel bir hesabın event'lerini aşağıdaki yöntemle dinleyebiliriz.
Hash Oluşturma
Last updated