ProHoster > Блог > Gudanarwa > Yadda ake rubuta kwangila mai wayo a Python akan hanyar sadarwar Ontology. Sashe na 3: API ɗin Runtime
Yadda ake rubuta kwangila mai wayo a Python akan hanyar sadarwar Ontology. Sashe na 3: API ɗin Runtime
Wannan shine kashi na 3 a cikin jerin labaran ilimi kan ƙirƙirar kwangiloli masu wayo a Python akan hanyar sadarwar toshewar Ontology. A kasidun da suka gabata mun saba da su
Yanzu da kuna da ra'ayin yadda ake kiran API ɗin ajiya mai dacewa lokacin haɓaka kwangila mai wayo ta amfani da Python akan hanyar sadarwar Ontology, bari mu matsa zuwa koyon yadda ake amfani da shi. API ɗin Runtime ( API ɗin Ƙimar Kwangila). API ɗin Runtime yana da APIs masu alaƙa guda 8 waɗanda ke ba da musaya gama gari don aiwatar da kwangila da taimakawa masu haɓakawa su dawo, canzawa, da inganta bayanai.
A ƙasa akwai taƙaitaccen bayanin bayanan API 8:
Bari mu kalli yadda ake amfani da bayanan API 8. Kafin wannan, zaku iya ƙirƙirar sabuwar kwangila a cikin kayan aikin haɓaka kwangilar wayo na Ontology SmartX kuma bi umarnin da ke ƙasa.
Yadda ake amfani da Runtime API
Akwai hanyoyi guda biyu don shigo da kaya API ɗin Runtime: ontology.interop.System.Runtime и ontology.interop.Ontology.Runtime. Hanyar Ontology ta ƙunshi sabbin APIs da aka ƙara. Layukan da ke ƙasa suna shigo da bayanan API.
from ontology.interop.System.Runtime import GetTime, CheckWitness, Log, Notify, Serialize, Deserialize
from ontology.interop.Ontology.Runtime import Base58ToAddress, AddressToBase58, GetCurrentBlockHash
Sanar da API
Aikin Sanarwa yana watsa taron a cikin cibiyar sadarwa. A cikin misalin da ke ƙasa, aikin Sanarwa zai dawo da hex kirtani "hello kalma" kuma ya watsa shi cikin hanyar sadarwa.
from ontology.interop.System.Runtime import Notify
def demo():
Notify("hello world")
Kuna iya ganin wannan a cikin rajistan ayyukan:
API ɗin GetTime
Aikin GetTime yana dawo da tambarin lokaci na yanzu, wanda ke dawo da lokacin Unix wanda aka kira aikin. Naúrar ma'aunin ita ce ta biyu.
from ontology.interop.System.Runtime import GetTime
def demo():
time=GetTime()
return time # return a uint num
API ɗin GetCurrentBlockHash
Aikin GetCurrentBlockHash yana dawo da zanta na toshe na yanzu.
Wannan nau'i-nau'i ne na serialization da ayyukan lalata. Aikin Serialize yana jujjuya abu zuwa abu mai ruɗi, kuma aikin Deserialize yana jujjuya bytearray zuwa ainihin abu. Samfurin lambar da ke ƙasa yana canza sigogi masu shigowa kuma yana adana su a cikin ma'ajiyar kwangilar. Hakanan yana dawo da bayanai daga ma'ajin kwangilar na dindindin kuma ya canza shi zuwa ainihin abu.
from ontology.interop.System.Runtime import GetTime, CheckWitness, Log, Notify, Serialize, Deserialize
from ontology.interop.System.Storage import Put, Get, GetContext
def Main(operation, args):
if operation == 'serialize_to_bytearray':
data = args[0]
return serialize_to_bytearray(data)
if operation == 'deserialize_from_bytearray':
key = args[0]
return deserialize_from_bytearray(key)
return False
def serialize_to_bytearray(data):
sc = GetContext()
key = "1"
byte_data = Serialize(data)
Put(sc, key, byte_data)
def deserialize_from_bytearray(key):
sc = GetContext()
byte_data = Get(sc, key)
data = Deserialize(byte_data)
return data
Base58ToAdireshi da AdireshiToBase58
Wannan nau'i biyu na ayyukan fassarar adireshi. Aikin Base58ToAddress yana canza adireshi na tushe58 zuwa adireshin bytearray, kuma AddressToBase58 yana canza adireshin bytearray zuwa adireshi na tushe58.
Aikin CheckWitness(fromAcct) yana da ayyuka guda biyu:
Tabbatar idan mai kiran aikin na yanzu ya fito dagaAcct. Idan eh (wato, tabbatar da sa hannu ya wuce), aikin zai dawo.
Bincika idan abin da ke kiran aikin na yanzu kwangila ne. Idan kwangila ne kuma an aiwatar da aikin daga kwangilar, to an wuce tabbatarwa. Wato, tabbatar idan dagaAcct shine ƙimar dawowar GetCallingScriptHash(). Aikin GetCallingScriptHash() na iya ɗaukar ƙimar kwangilar hash ɗin kwangilar wayo na yanzu.
from ontology.interop.System.Runtime import CheckWitness
from ontology.interop.Ontology.Runtime import Base58ToAddress
def demo():
addr=Base58ToAddress("AW8hN1KhHE3fLDoPAwrhtjD1P7vfad3v8z")
res=CheckWitness(addr)
return res
Ana iya samun ƙarin bayani a Guthub. A kasida ta gaba za mu gabatar 'Yan ƙasar APIdon koyon yadda ake canja wurin kadarori a cikin kwangilolin smart na Ontology.
Editoci ne suka fassara labarin Hashrate&Shares musamman ga Ontology na Rasha.
Shin kai mai haɓaka ne? Kasance tare da jama'ar fasahar mu a Zama. Hakanan, duba Cibiyar Haɓakawa Ontology, zaku iya samun ƙarin kayan aiki, takardu da ƙari a can.