Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage API

Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage API

Սա Python-ում խելացի պայմանագրեր ստեղծելու մասին ուսուցողական հոդվածների երկրորդ մասն է Ontology բլոկչեյն ցանցում: Նախորդ հոդվածում ծանոթացանք Blockchain & Block API Օնտոլոգիայի խելացի պայմանագիր.

Այսօր մենք կքննարկենք, թե ինչպես օգտագործել երկրորդ մոդուլը. Պահպանման API. Storage API-ն ունի հինգ առնչվող API, որոնք թույլ են տալիս ավելացում, ջնջում և փոփոխություններ կատարել բլոկչեյնի վրա խելացի պայմանագրերի մշտական ​​պահպանման մեջ:

Ստորև բերված է այս հինգ API-ների համառոտ նկարագրությունը.

Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage API

Եկեք ավելի սերտ նայենք, թե ինչպես օգտագործել այս հինգ API-ները:

0. Եկեք նոր պայմանագիր ստեղծենք SmartX

1. Ինչպես օգտագործել Storage API-ը

GetContext և GetReadOnlyContext

GetContext и GetReadOnlyContext ստանալ այն համատեքստը, որում կատարվում է ընթացիկ խելացի պայմանագիրը: Վերադարձի արժեքը ներկայիս խելացի պայմանագրի հեշի հակառակն է: Ինչպես անունն է հուշում, GetReadOnlyContext վերցնում է միայն կարդալու համատեքստը: Ստորև բերված օրինակում վերադարձի արժեքը վերևի աջ անկյունում ցուցադրված պայմանագրի հեշի հակադարձ արժեքն է:

Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage API

Դնել

Ֆունկցիա Դնել պատասխանատու է բլոկչեյնի վրա տվյալների պահպանման համար բառարանի տեսքով։ Ինչպես ցույց է տրված, Դնել վերցնում է երեք պարամետր. GetContext վերցնում է ներկայումս գործող խելացի պայմանագրի համատեքստը, բանալին այն բանալի արժեքն է, որն անհրաժեշտ է տվյալների պահպանման համար, իսկ արժեքը՝ տվյալների արժեքն է, որը պետք է պահպանվի: Նկատի ունեցեք, որ եթե բանալիի արժեքն արդեն խանութում է, ֆունկցիան կթարմացնի իր համապատասխան արժեքը։

Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage APIhashrate-and-shares.ru/images/obzorontology/python/functionput.png

Ստանալ

Ֆունկցիա Ստանալ պատասխանատու է ընթացիկ բլոկչեյնում տվյալների ընթերցման համար՝ առանցքային արժեքի միջոցով: Ստորև բերված օրինակում դուք կարող եք լրացնել հիմնական արժեքը աջ կողմում գտնվող ընտրանքների վահանակում՝ գործառույթն իրականացնելու համար և կարդալ բլոկչեյնի հիմնական արժեքին համապատասխանող տվյալները:

Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage API

ջնջել

Ֆունկցիա ջնջել պատասխանատու է բլոկչեյնում տվյալների ջնջման համար՝ առանցքային արժեքի միջոցով: Ստորև բերված օրինակում կարող եք լրացնել գործառույթի հիմնական արժեքը աջ կողմում գտնվող ընտրանքների վահանակում և ջնջել բլոկչեյնի հիմնական արժեքին համապատասխանող տվյալները:

Ինչպես գրել խելացի պայմանագիր Python-ում Ontology ցանցում: Մաս 2. Storage API

2. Storage API կոդի օրինակ

Ստորև բերված կոդը տալիս է հինգ API-ների օգտագործման մանրամասն օրինակ՝ GetContext, Get, Put, Delete և GetReadOnlyContext: Կարող եք փորձել գործարկել API-ի տվյալները 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 պահեստավորումը ամբողջ բլոկչեյն համակարգի առանցքն է: Ontology Storage API-ն հեշտ է օգտագործել և հարմար է մշակողների համար:

Մյուս կողմից, պահեստը հաքերային հարձակումների կիզակետն է, ինչպիսին է անվտանգության սպառնալիքը, որը մենք նշեցինք նախորդ հոդվածներից մեկում. պահեստավորման ներարկման հարձակումՄշակողները պարտավոր են հատուկ ուշադրություն դարձնել անվտանգությանը պահպանմանը վերաբերող կոդ գրելիս: Ամբողջական ուղեցույցը կարող եք գտնել մեր կայքում GitHub այստեղ

Հաջորդ հոդվածում մենք կքննարկենք, թե ինչպես օգտագործել Runtime API.

Հոդվածը թարգմանվել է Hashrate&Shares-ի խմբագիրների կողմից հատուկ OntologyRussia-ի համար։ լաց

Դուք ծրագրավորող եք: Միացեք մեր տեխնոլոգիական համայնքին Discord. Բացի այդ, նայեք Մշակողների կենտրոն Օնտոլոգիա, այնտեղ կարող եք գտնել ավելի շատ գործիքներ, փաստաթղթեր և շատ ավելին:

Բաց առաջադրանքներ մշակողների համար: Կատարեք առաջադրանքը և ստացեք պարգև:

Դիմել Ուսանողների համար օնտոլոգիայի տաղանդի ծրագրի համար

Ontology- ը

Օնտոլոգիայի կայք - GitHub - Discord - Telegram ռուսերեն - Twitter - Փակցնելուց

Source: www.habr.com

Добавить комментарий