ProHoster > Blog > Administrasi > Kumaha cara nyerat kontrak pinter dina Python dina jaringan Ontology. Bagian 2: Panyimpenan API
Kumaha cara nyerat kontrak pinter dina Python dina jaringan Ontology. Bagian 2: Panyimpenan API
Ieu mangrupikeun bagian kadua dina séri tulisan atikan ngeunaan nyiptakeun kontrak pinter dina Python dina jaringan blockchain Ontology. Dina artikel saméméhna urang meunang acquainted jeung Blockchain & Blok API Ontology kontrak pinter.
Dinten ieu kami bakal ngabahas kumaha ngagunakeun modul kadua— Panyimpenan API. API Panyimpenan ngagaduhan lima API anu aya hubunganana anu ngamungkinkeun tambihan, ngahapus, sareng parobihan kana panyimpenan anu tetep dina kontrak pinter dina blockchain.
Di handap ieu pedaran ringkes lima API ieu:
Hayu urang tingali kumaha ngagunakeun lima API ieu.
GetContext и GetReadOnlyContext kéngingkeun kontéks dimana kontrak pinter ayeuna dieksekusi. Nilai balik nyaéta kabalikan tina Hash kontrak pinter ayeuna. Sakumaha ngaranna nunjukkeun, GetReadOnlyContext nyokot konteks baca-hijina. Dina conto di handap, nilai balik teh sabalikna ti Hash kontrak dipintonkeun di pojok katuhu luhur.
neundeun
fungsi neundeun tanggung jawab pikeun nyimpen data dina blockchain dina bentuk kamus. Salaku ditémbongkeun, neundeun nyokot tilu parameter. GetContext nyokot konteks kontrak pinter ayeuna ngajalankeun, konci nyaeta nilai konci anu diperlukeun pikeun nyimpen data, sarta nilai mangrupa nilai data nu kudu disimpen. Catet yén upami nilai konci parantos aya di toko, fungsina bakal ngamutahirkeun nilai anu saluyu.
fungsi meunangkeun tanggung jawab maca data dina blockchain ayeuna ngaliwatan nilai konci. Dina conto di handap ieu, anjeun tiasa ngeusian nilai konci dina panel pilihan di sisi katuhu pikeun ngaéksekusi fungsi sareng maca data anu cocog sareng nilai konci dina blockchain.
pupus
fungsi pupus tanggung jawab mupus data dina blockchain ngaliwatan nilai konci. Dina conto di handap ieu, anjeun tiasa ngeusian nilai konci pikeun fungsi dina panel pilihan di sisi katuhu sareng mupus data anu cocog sareng nilai konci dina blockchain.
2. Panyimpenan kode API conto
Kodeu di handap masihan conto lengkep ngeunaan pamakean lima API: GetContext, Get, Put, Delete and GetReadOnlyContext. Anjeun tiasa nyobian ngajalankeun data API di SmartX.
from ontology.interop.System.Storage import GetContext, Get, Put, Delete, GetReadOnlyContext
from ontology.interop.System.Runtime import Notify
def Main(operation,args):
if operation == 'get_sc':
return get_sc()
if operation == 'get_read_only_sc':
return get_read_only_sc()
if operation == 'get_data':
key=args[0]
return get_data(key)
if operation == 'save_data':
key=args[0]
value=args[1]
return save_data(key, value)
if operation == 'delete_data':
key=args[0]
return delete_data(key)
return False
def get_sc():
return GetContext()
def get_read_only_sc():
return GetReadOnlyContext()
def get_data(key):
sc=GetContext()
data=Get(sc,key)
return data
def save_data(key, value):
sc=GetContext()
Put(sc,key,value)
def delete_data(key):
sc=GetContext()
Delete(sc,key)
afterword
Panyimpenan Blockchain mangrupikeun inti sadaya sistem blockchain. Ontology Storage API gampang dianggo sareng ramah pamekar.
Di sisi anu sanés, panyimpen mangrupikeun fokus serangan hacker, sapertos ancaman kaamanan anu kami sebutkeun dina salah sahiji tulisan sateuacana— serangan suntik gudangPamekar diwajibkeun pikeun nengetan khusus pikeun kaamanan nalika nyerat kode anu aya hubunganana sareng panyimpenan. Anjeun tiasa mendakan pituduh lengkep dina kami GitHub dieu.
Dina artikel salajengna urang bakal ngabahas cara ngagunakeunana Runtime API.
Tulisan ieu ditarjamahkeun ku éditor Hashrate&Shares khususna pikeun OntologyRussia. ceurik
Anjeun pamekar? Gabung komunitas tech kami di Discord. Ogé, nyandak katingal di Puseur pamekar Ontologi, anjeun tiasa mendakan langkung seueur alat, dokuméntasi sareng seueur deui di dinya.