Algorand Günlüğüm(5/10)

Enes POLAT
Turk Telekom Bulut Teknolojileri
3 min readSep 29, 2022

Bu yazımızda Algorand blokzincirinde oluşturulan hesaptaki balance bilgisini sorgulayan JavaScript kod yazacağız. Dilerseniz hemen başlayalım.

Daha önceki birinci bölüm, ikinci bölüm, üçüncü bölüm ve dördüncü bölümleri okumadıysanız linklerden erişebilirsiniz.

Kaynak: https://yoyodex.io/algorand-yukselis-trendini-surdurmek-icin-temel-destegin-uzerinde-kalmali/?amp=1

Balance Okuma

Algorand cüzdanlarındaki tutarı (balance) okumak için balance.js isminde yeni bir dosya oluşturalım. İlk aşama olarak aşağıdaki kodları yazalım:

balance.js

Burada önce algosdk modülünü programımıza dahil ettik. checkbalance isminde bir fonksiyon oluşturduk. Algorand blokzincirinde işlem yapabilmek için port bilgisi gerekiyor. Değerini string olarak boş belirledik. bağlantı için token objesi oluşturmamız gerekiyor ve bunun x-api-key değerini daha önce .env dosyasında purestake.io sayfasından edindiğimiz API değerine eşitledik. module.exports=checkbalance ifadesiyle de checkbalance fonksiyonunun varsayılan fonksiyon olarak export edileceğini belirttik.

const algosdk=require( ‘algosdk’ ) ;

checkbalance=()=>

const port=””:

const token={

“x-api-key”:process.env.API

}

module.exports=checkbalance

Biz Algorand testnetinde işlem yapacağız. Bu yüzden kodumuzda Purestake.io’nun sayfasında testnete bağlantıyı sağlayan yolu belirteceğiz.

cost Testserver=”https://testnet-algorand.api.purestake.io/ps2",

Şimdi port, network yolu (mainnet, testnet veya betanet biz testnetten devam edeceğiz) ve token bilgisini girerek bağlantı tünelimizi oluşturalım.

let client= new algosdk.Algodv2 (token, Testserver, port) ;

3. Bölümde hesap oluşturmayı görmüştük, o yöntemle yeni bir hesap oluşturalım

Hesap Oluşturma ( 3. Bölümü okuyabilirsiniz)

Oluşturulan hesabın public adresini alalım:

let account = “Z2JVZBTPSFE6NCWKLIXEEOBAPD3V67OFKP2J226CI5R5K2FXBA2CYAGT3Y”;

Kodumuzun devamında asenkron olarak hesap bilgisini alalım. Hata da varsa hata döndürmesini isteyelim. Bunun için accountInformation özelliğini kullanacağız.

(async () =>{

let account_ info=(await client.accountInformation(account).do());

console.log(“Balance of account :”, JSON.stringify(account_info));

}

)().catch((err) =>{

console.log(err);

})

Şimdi tüm kodumuzu görelim.

const algosdk=require( ‘algosdk’ ) ;

checkbalance=()=>{

const port=””

const token={

“x-api-key”:process.env.API

};

const Testserver=”https://testnet-algorand.api.purestake.io/ps2"

let client= new algosdk.Algodv2 (token, Testserver, port) ;

let account=”Z2JVZBTPSFE6NCWKLIXEEOBAPD3V67OFKP2J226CI5R5K2FXBA2CYAGT3Y”;

(async () =>{

let account_info=(await client.accountInformation(account).do());

console.log(“Balance of account : 1”, JSON.stringify(account_info));

}

)().catch((err) =>{

console.log(err);

})

}

module.exports=checkbalance

Artık index.js sayfamızda bu metodumuzu çağırabiliriz. index.js kodlarını aşağıdaki gibi güncelleyelim.

Burada “require(‘dotenv’).config()” ifadesini balance.js sayfasında .env dosyasına erişimi istediğimizden ekledik.

const algosdk= require(‘algosdk’ ) ;

const createadress= require(‘./address’)

const checkBalance= require(‘./balance’)

require(‘dotenv’).config()

//createadress()

checkBalance()

npm start komutu zamanı:)

Detaylı baktığımızda amount 0 görünüyor. yani hiç balance bulunmuyor. Amount bilgisini doğrudan görebilmek için aşağıdaki balance.js dosyasında güncellemeyi yapalım.

console.log(“Balance of account : 1”, JSON.stringify(account_info));

Balance mı gerekli?

Önümüzde bölümde görüşmek üzere ;)

--

--