Å Ä« ir otrÄ daļa izglÄ«tojoÅ”u rakstu sÄrijÄ par viedo lÄ«gumu izveidi Python Ontology blokÄ·Ädes tÄ«klÄ. IepriekÅ”ÄjÄ rakstÄ mÄs iepazinÄmies ar Blockchain & Block API OntoloÄ£ijas viedais lÄ«gums.
Å odien mÄs apspriedÄ«sim, kÄ izmantot otro moduli - KrÄtuves API. Storage API ir piecas saistÄ«tas API, kas ļauj pievienot, dzÄst un mainÄ«t pastÄvÄ«go krÄtuvi viedajos lÄ«gumos blokÄ·ÄdÄ.
TÄlÄk ir sniegts Ä«ss Å”o piecu API apraksts.
SÄ«kÄk apskatÄ«sim, kÄ izmantot Ŕīs piecas API.
GetContext Šø GetReadOnlyContext iegÅ«stiet kontekstu, kurÄ tiek izpildÄ«ts paÅ”reizÄjais viedais lÄ«gums. AtgrieÅ”anas vÄrtÄ«ba ir paÅ”reizÄjÄ viedÄ lÄ«guma jaucÄjkoda apgrieztÄ vÄrtÄ«ba. KÄ norÄda nosaukums, GetReadOnlyContext izmanto tikai lasÄmu kontekstu. TÄlÄk esoÅ”ajÄ piemÄrÄ atgrieÅ”anas vÄrtÄ«ba ir lÄ«guma jaucÄjkoda apgrieztÄ vÄrtÄ«ba, kas tiek parÄdÄ«ta augÅ”ÄjÄ labajÄ stÅ«rÄ«.
likt
Funkcija likt ir atbildÄ«gs par datu glabÄÅ”anu blokÄ·ÄdÄ vÄrdnÄ«cas veidÄ. KÄ parÄdÄ«ts, likt aizÅem trÄ«s parametrus. GetContext Åem kontekstu ar paÅ”laik spÄkÄ esoÅ”o viedo lÄ«gumu, atslÄga ir atslÄgas vÄrtÄ«ba, kas nepiecieÅ”ama datu saglabÄÅ”anai, un vÄrtÄ«ba ir saglabÄjamo datu vÄrtÄ«ba. Å emiet vÄrÄ: ja atslÄgas vÄrtÄ«ba jau ir veikalÄ, funkcija atjauninÄs tai atbilstoÅ”o vÄrtÄ«bu.
Funkcija SaÅemt ir atbildÄ«gs par datu nolasÄ«Å”anu paÅ”reizÄjÄ blokÄ·ÄdÄ, izmantojot atslÄgas vÄrtÄ«bu. TÄlÄk esoÅ”ajÄ piemÄrÄ varat ievadÄ«t atslÄgas vÄrtÄ«bu opciju panelÄ« labajÄ pusÄ, lai izpildÄ«tu funkciju un nolasÄ«tu datus, kas atbilst atslÄgas vÄrtÄ«bai blokÄ·ÄdÄ.
izdzÄst
Funkcija izdzÄst ir atbildÄ«gs par datu dzÄÅ”anu blokÄ·ÄdÄ, izmantojot atslÄgas vÄrtÄ«bu. TÄlÄk esoÅ”ajÄ piemÄrÄ varat ievadÄ«t funkcijas atslÄgas vÄrtÄ«bu opciju panelÄ« labajÄ pusÄ un dzÄst datus, kas atbilst atslÄgas vÄrtÄ«bai blokÄ·ÄdÄ.
2. Storage API koda piemÄrs
TÄlÄk sniegtajÄ kodÄ ir sniegts detalizÄts piecu API izmantoÅ”anas piemÄrs: GetContext, Get, Put, Delete un GetReadOnlyContext. Varat mÄÄ£inÄt palaist API datus 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)
PÄcvÄrds
Blockchain krÄtuve ir visas blokÄ·Ädes sistÄmas kodols. Ontology Storage API ir viegli lietojama un izstrÄdÄtÄjiem draudzÄ«ga.
No otras puses, uz krÄtuvi ir vÄrsti hakeru uzbrukumi, piemÄram, droŔības draudi, par kuriem mÄs minÄjÄm vienÄ no iepriekÅ”Äjiem rakstiem. uzglabÄÅ”anas injekcijas uzbrukumsIzstrÄdÄtÄjiem, rakstot kodu, kas attiecas uz krÄtuvi, Ä«paÅ”a uzmanÄ«ba jÄpievÄrÅ” droŔībai. Pilnu rokasgrÄmatu varat atrast mÅ«su vietnÄ GitHub Å”eit.
NÄkamajÄ rakstÄ mÄs apspriedÄ«sim, kÄ to izmantot Izpildlaika API.
Rakstu speciÄli OntologyRussia tulkojuÅ”i Hashrate&Shares redaktori. raudÄt
Vai jÅ«s esat izstrÄdÄtÄjs? Pievienojieties mÅ«su tehnoloÄ£iju kopienai vietnÄ NeatbilstÄ«ba. Apskatiet arÄ« IzstrÄdÄtÄju centrs OntoloÄ£ija, tur var atrast vairÄk rÄ«ku, dokumentÄciju un daudz ko citu.