ProHoster > Blog > fitantanan-draharaha > Ahoana ny fanoratana fifanarahana hendry amin'ny Python amin'ny tambajotra Ontology. Fizarana 1: Blockchain & Block API
Ahoana ny fanoratana fifanarahana hendry amin'ny Python amin'ny tambajotra Ontology. Fizarana 1: Blockchain & Block API
Ity no ampahany voalohany amin'ny andiana fampianarana momba ny famoronana fifanarahana marani-tsaina Python amin'ny tambajotra Ontology blockchain amin'ny fampiasana ny fitaovana fampivoarana fifanarahana marani-tsaina. SmartX.
Ato amin'ity lahatsoratra ity dia hanomboka ny fahafantarantsika ny Ontology smart contract API. Ny Ontology smart contract API dia mizara ho modules 7:
Blockchain & Block API,
runtime API,
fitahirizana API,
API teratany,
Fanavaozana ny API,
Execution Engine API sy
Static & Dynamic Call API.
Blockchain & Block API no ampahany lehibe amin'ny rafitra fifanarahana marani-tsaina Ontology. Ny Blockchain API dia manohana ny asa fangataham-panadihadiana fototra, toy ny fahazoana ny haavon'ny sakana amin'izao fotoana izao, raha ny Block API kosa dia manohana ny fampandehanan-draharahan'ny fangataham-baravarana fototra, toy ny fametrahana ny isan'ny fifanakalozana ho an'ny sakana iray.
Ny rohy mankany amin'ny asa fifanarahana marani-tsaina dia mitovy amin'ny rohy Python. Azonao atao ny miditra amin'ireo fiasa mifanaraka amin'izany raha ilaina. Ohatra, ity fanambarana manaraka ity dia mampiditra fiasa GetHeight hahazoana ny haavon'ny sakana ankehitriny, ary fiasa GetHeader hahazoana ny lohatenin'ny sakana.
from ontology.interop.System.Blockchain import GetHeight, GetHeader
GetHeight
GetHeight dia ampiasaina mba hahazoana ny laharana filaharana farany amin'ny sakana, araka ny aseho amin'ny ohatra etsy ambany. Ao amin'ny ohatra farany, dia hanaisotra ny asa Main ho fanamorana, fa azonao ampiana izany raha ilaina.
from ontology.interop.System.Runtime import Notify
from ontology.interop.System.Blockchain import GetHeight
def Main(operation):
if operation == 'demo':
return demo()
return False
def demo():
height=GetHeight()
Notify(height) # print height
return height #return height after running the function
GetHeader
Ny GetHeader dia ampiasaina mba hahazoana ny lohatenin'ny sakana, ny mari-pamantarana dia ny nomeraon'ny sakana ao amin'ny blockchain. Ohatra:
from ontology.interop.System.Runtime import Notify
from ontology.interop.System.Blockchain import GetHeader
def demo():
block_height=10
header=GetHeader(block_height)
Notify(header)
return header
GetTransactionByHash
GetTransactionByHash dia ampiasaina hahazoana fifampiraharahana amin'ny alà lan'ny hash transaction. Nalefa any amin'ny GetTransactionByHash ho paramètre amin'ny endrika bytearray. Ny fanalahidin'ity asa ity dia ny mamadika ny hash transaction amin'ny endrika hex ho amin'ny hash transaction amin'ny format bytearray. Dingana lehibe izany. Raha tsy izany dia hahazo hadisoana ianao izay manondro fa tsy misy sakana miaraka amin'io hash io. Andao horaisina ho ohatra ny hash transaction amin'ny endrika hex hanovana azy ho endrika bytearray. Toy izao ny ohatra iray:
Afaka mampiasa ny fiasa GetContract ny mpamorona mba hahazoana fifanarahana amin'ny alΓ lan'ny hash amin'ny fifanarahana. Ny fizotry ny fiovam-po amin'ny tenifototra fifanarahana dia mitovy amin'ny fizotry ny fiovam-pihetsika tenifototra voalaza etsy ambony.
from ontology.interop.System.Blockchain import GetBlock
def demo():
block=GetBlock(1408)
return block
2. Mahazoa sakana isaky ny sakana:
from ontology.interop.System.Blockchain import GetBlock
def demo():
block_hash=bytearray(b'x16xe0xc5x40x82x79x77x30x44xeax66xc8xc4x5dx17xf7x17x73x92x33x6dx54xe3x48x46x0bxc3x2fxe2x15x03xe4')
block=GetBlock(block_hash)
2. Ahoana ny fampiasana Block API
Misy fiasa telo azo alaina ao amin'ny Block API: GetTransactions, GetTransactionCountary GetTransactionByIndex. Hopotehinay tsirairay izy ireo.
GetTransactionCount
GetTransactionCount dia ampiasaina hahazoana ny isan'ny fifanakalozana ho an'ny sakana iray.
from ontology.interop.System.Blockchain import GetBlock
from ontology.interop.System.Block import GetTransactionCount
def demo():
block=GetBlock(1408)
count=GetTransactionCount(block)
return count
GetTransactions
Afaka mampiasa ny fiasa GetTransactions ny mpamorona mba hahazoana ny fifampiraharahana rehetra amin'ny sakana iray.
from ontology.interop.System.Blockchain import GetBlock
from ontology.interop.System.Block import GetTransactions
def demo():
block=GetBlock(1408)
txs=GetTransactions(block)
return txs
GetTransactionByIndex
GetTransactionByIndex dia ampiasaina hahazoana fifampiraharahana manokana amin'ny sakana iray.
from ontology.interop.System.Blockchain import GetBlock
from ontology.interop.System.Block import GetTransactionByIndex
def demo():
block=GetBlock(1408)
tx=GetTransactionByIndex(block,0) # index starts from 0.
return tx
Ny Blockchain & Block API dia ampahany tena ilaina amin'ny fifanarahana marani-tsaina satria azonao ampiasaina izy ireo hangataka angon-drakitra blockchain sy hanakana ny angona amin'ny fifanarahana marani-tsaina. Ao amin'ny lahatsoratra ho avy, hiresaka momba ny fomba fampiasana ny sisa amin'ny API isika ary hahita ny fomba ifandraisany amin'ny Ontology blockchain.
Ny lahatsoratra dia nadikan'ny tonian'ny Hashrate&Shares indrindra ho an'ny OntologyRussia. Miantsoa
Mpanamboatra ve ianao? Midira ao amin'ny vondrom-piarahamonina teknolojia ao amin'ny fifandirana. Jereo koa Foiben'ny mpamorona ao amin'ny tranokalanay, izay ahitanao fitaovana mpamorona, antontan-taratasy, ary maro hafa.