በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይ

በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይ

ይህ በፓይዘን ኦንቶሎጂ blockchain አውታረመረብ ላይ ዘመናዊ ኮንትራቶችን ስለመፍጠር በተከታታይ ትምህርታዊ መጣጥፎች ውስጥ ሁለተኛው ክፍል ነው። በቀደመው መጣጥፍ ውስጥ ተዋወቅን። Blockchain እና አግድ API ኦንቶሎጂ ብልጥ ውል.

ዛሬ ሁለተኛውን ሞጁል እንዴት መጠቀም እንደሚቻል እንነጋገራለን- ማከማቻ ኤፒአይ. የማከማቻ ኤፒአይ በብሎክቼይን ላይ ባሉ ዘመናዊ ኮንትራቶች ውስጥ መደመር፣ መሰረዝ እና ቀጣይነት ያለው ማከማቻ ላይ የሚደረጉ ለውጦችን የሚፈቅዱ አምስት ተዛማጅ ኤፒአይዎች አሉት።

ከታች የእነዚህ አምስት ኤፒአይዎች አጭር መግለጫ አለ፡-

በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይ

እነዚህን አምስት ኤ.ፒ.አይ.ዎች እንዴት መጠቀም እንዳለብን በዝርዝር እንመልከት።

0. አዲስ ውል እንፍጠር SmartX

1. የማከማቻ ኤፒአይን እንዴት መጠቀም እንደሚቻል

GetContext እና GetReadOnlyContext

GetContext и GetReadOnlyContext የአሁኑ ዘመናዊ ውል የሚፈፀምበትን አውድ ያግኙ። የመመለሻ ዋጋ የአሁኑ የስማርት ኮንትራት ሃሽ ተገላቢጦሽ ነው። ስሙ እንደሚያመለክተው እ.ኤ.አ. GetReadOnlyContext ተነባቢ-ብቻ አውድ ይወስዳል። ከታች ባለው ምሳሌ፣ የመመለሻ ዋጋው ከላይኛው ቀኝ ጥግ ላይ የሚታየው የውል ሃሽ ተገላቢጦሽ ነው።

በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይ

አስቀመጠ

ሥራ አስቀመጠ በ blockchain ላይ መረጃን በመዝገበ-ቃላት መልክ የማከማቸት ሃላፊነት አለበት. እንደሚታየው, አስቀመጠ ሶስት መለኪያዎችን ይወስዳል. GetContext አሁን እየሰራ ያለውን ስማርት ኮንትራት አውድ ይወስዳል፣ ቁልፉ ውሂቡን ለማስቀመጥ የሚያስፈልገው ቁልፍ ዋጋ ነው፣ እና እሴት መቀመጥ ያለበት የውሂብ ዋጋ ነው። የቁልፉ ዋጋ አስቀድሞ በመደብሩ ውስጥ ካለ፣ ተግባሩ ተጓዳኝ እሴቱን እንደሚያዘምን ልብ ይበሉ።

በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይhashrate-and-shares.ru/images/obzorontology/python/functionput.png

ያግኙ

ሥራ ያግኙ አሁን ባለው blockchain ውስጥ ያለውን መረጃ በቁልፍ እሴቱ የማንበብ ኃላፊነት አለበት። ከታች ባለው ምሳሌ, ተግባሩን ለማስፈጸም በቀኝ በኩል ባለው የአማራጮች ፓነል ውስጥ ያለውን ቁልፍ እሴት መሙላት እና በ blockchain ውስጥ ካለው ቁልፍ እሴት ጋር የሚዛመደውን መረጃ ማንበብ ይችላሉ.

በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይ

ሰርዝ

ሥራ ሰርዝ በብሎክቼይን ውስጥ ያለውን መረጃ በቁልፍ እሴቱ የመሰረዝ ሃላፊነት አለበት። ከዚህ በታች ባለው ምሳሌ በቀኝ በኩል ባለው የአማራጭ ፓነል ውስጥ ለተግባሩ ቁልፍ እሴት መሙላት እና በ blockchain ውስጥ ካለው ቁልፍ እሴት ጋር የሚዛመደውን መረጃ መሰረዝ ይችላሉ።

በኦንቶሎጂ አውታረመረብ ላይ በ Python ውስጥ ብልጥ ውል እንዴት እንደሚፃፍ። ክፍል 2፡ ማከማቻ ኤፒአይ

2. የማከማቻ ኤፒአይ ኮድ ምሳሌ

ከታች ያለው ኮድ አምስት ኤፒአይዎችን ስለመጠቀም ዝርዝር ምሳሌ ይሰጣል GetContext፣ Get፣ Put፣ Delete እና GetReadOnlyContext። የኤፒአይ ውሂብን ለማስኬድ መሞከር ትችላለህ 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)

ከቃል በኋላ

የብሎክቼይን ማከማቻ የመላው blockchain ስርዓት ዋና አካል ነው። የኦንቶሎጂ ማከማቻ ኤፒአይ ለመጠቀም ቀላል እና ለገንቢ ተስማሚ ነው።

በሌላ በኩል፣ ማከማቻ የጠላፊ ጥቃቶች ትኩረት ነው፣ ለምሳሌ ካለፉት መጣጥፎች በአንዱ ላይ የጠቀስነው የደህንነት ስጋት— የማከማቻ መርፌ ጥቃትገንቢዎች ከማከማቻ ጋር የተያያዘ ኮድ ሲጽፉ ለደህንነት ልዩ ትኩረት መስጠት አለባቸው. ሙሉውን መመሪያ በእኛ ላይ ማግኘት ይችላሉ። የፊልሙ እዚህ.

በሚቀጥለው ርዕስ እንዴት መጠቀም እንዳለብን እንነጋገራለን የአሂድ ጊዜ ኤፒአይ.

ጽሑፉ የተተረጎመው በ Hashrate&Shares አዘጋጆች በተለይ ለኦንቶሎጂ ሩሲያ ነው። ማልቀስ

ገንቢ ነህ? የእኛን የቴክኖሎጂ ማህበረሰብ በ ላይ ይቀላቀሉ ክርክር. በተጨማሪም, ይመልከቱ የገንቢ ማዕከል ኦንቶሎጂ ለተጨማሪ መሳሪያዎች፣ ሰነዶች እና ሌሎችም።

ተግባሮችን ለገንቢዎች ይክፈቱ። ስራውን ይዝጉ - ሽልማት ያግኙ.

ተግብር ለተማሪዎች የኦንቶሎጂ ተሰጥኦ ፕሮግራም

ተዋረዳዊ

የኦንቶሎጂ ድር ጣቢያ - የፊልሙ - ክርክር - ቴሌግራም ሩሲያኛ - Twitter - Reddit

ምንጭ: hab.com

አስተያየት ያክሉ