рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг API

рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг API

рдпреЛ рдУрдиреНрдЯреЛрд▓рдЬреА рдмреНрд▓рдХрдЪреЗрди рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рд╢реИрдХреНрд╖рд┐рдХ рд▓реЗрдЦрд╣рд░реВрдХреЛ рд╢реНрд░реГрдВрдЦрд▓рд╛рдХреЛ рджреЛрд╕реНрд░реЛ рднрд╛рдЧ рд╣реЛред рдЕрдШрд┐рд▓реНрд▓реЛ рд▓реЗрдЦрдорд╛ рд╣рд╛рдореАрд▓реЗ рдЪрд┐рдиреНрдпреМрдВ Blockchain рд░ Block API рдУрдиреНрдЯреЛрд▓рдЬреА рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзред

рдЖрдЬ рд╣рд╛рдореА рджреЛрд╕реНрд░реЛ рдореЛрдбреНрдпреБрд▓ рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдЫрд▓рдлрд▓ рдЧрд░реНрдиреЗрдЫреМрдВ- рднрдгреНрдбрд╛рд░рдг APIред рднрдгреНрдбрд╛рд░рдг рдПрдкреАрдЖрдИрд╕рдБрдЧ рдкрд╛рдБрдЪ рд╕рдореНрдмрдиреНрдзрд┐рдд рдПрдкреАрдЖрдИрд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзрд╣рд░реВрдорд╛ рдердк, рдореЗрдЯрд╛рдЙрдиреЗ, рд░ рдирд┐рд░рдиреНрддрд░ рднрдгреНрдбрд╛рд░рдгрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рддрд▓ рдпреА рдкрд╛рдБрдЪ API рдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рдЫ:

рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг API

рдпреА рдкрд╛рдБрдЪ API рд╣рд░реВ рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдирдЬрд┐рдХрдмрд╛рдЯ рд╣реЗрд░реМрдВред

0. рдирдпрд╛рдБ рд╕рдореНрдЭреМрддрд╛ рдЧрд░реМрдВ рд╕реНрдорд╛рд░реНрдЯ рдПрдХреНрд╕

1. рдХрд╕рд░реА рднрдгреНрдбрд╛рд░рдг API рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ

GetContext рд░ GetReadOnlyContext

GetContext ╨╕ GetReadOnlyContext рд╣рд╛рд▓рдХреЛ рд╕реНрдорд╛рд░реНрдЯ рд╕рдореНрдЭреМрддрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рднрдПрдХреЛ рд╕рдиреНрджрд░реНрдн рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред рд░рд┐рдЯрд░реНрди рдорд╛рди рд╣рд╛рд▓рдХреЛ рд╕реНрдорд╛рд░реНрдЯ рд╕рдореНрдЭреМрддрд╛ рд╣реНрдпрд╛рд╕рдХреЛ рдЙрд▓реНрдЯреЛ рд╣реЛред рдирд╛рдорд▓реЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдП рдЬрд╕реНрддреИ, GetReadOnlyContext рдкрдвреНрдиреЗ рдорд╛рддреНрд░реИ рд╕рдиреНрджрд░реНрдн рд▓рд┐рдиреНрдЫред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдорд╛, рд░рд┐рдЯрд░реНрди рдорд╛рди рдорд╛рдерд┐рд▓реНрд▓реЛ рджрд╛рдпрд╛рдБ рдХреБрдирд╛рдорд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдЕрдиреБрдмрдВрдз рд╣реНрдпрд╛рд╕рдХреЛ рдЙрд▓реНрдЯреЛ рд╣реЛред

рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг API

рд░рд╛рдЦреНрди

рд╕рдорд╛рд░реЛрд╣ рд░рд╛рдЦреНрди рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рд░реВрдк рдорд╛ blockchain рдорд╛ рдбрд╛рдЯрд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░реНрди рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдЫред рджреЗрдЦрд╛рдЗрдП рдЕрдиреБрд╕рд╛рд░, рд░рд╛рдЦреНрди рддреАрди рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рд▓рд┐рдиреНрдЫред GetContext рд╣рд╛рд▓ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдзрдХреЛ рд╕рдиреНрджрд░реНрдн рд▓рд┐рдиреНрдЫ, рдХреБрдЮреНрдЬреА рдбреЗрдЯрд╛ рдмрдЪрдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрдиреЗ рдХреБрдЮреНрдЬреАрдХреЛ рдорд╛рди рд╣реЛ, рд░ рдореВрд▓реНрдп рдмрдЪрдд рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛рдХреЛ рдореВрд▓реНрдп рд╣реЛред рдиреЛрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХрд┐ рдпрджрд┐ рдХреБрдЮреНрдЬреАрдХреЛ рдорд╛рди рдкрд╣рд┐рд▓реЗ рдиреИ рд╕реНрдЯреЛрд░рдорд╛ рдЫ рднрдиреЗ, рдкреНрд░рдХрд╛рд░реНрдпрд▓реЗ рдпрд╕рдХреЛ рд╕рдореНрдмрдиреНрдзрд┐рдд рдорд╛рди рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрдиреЗрдЫред

рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг APIhashrate-and-shares.ru/images/obzorontology/python/functionput.png

рдкреНрд░рд╛рдкреНрдд

рд╕рдорд╛рд░реЛрд╣ рдкреНрд░рд╛рдкреНрдд рдХреБрдЮреНрдЬреА рдорд╛рди рдорд╛рд░реНрдлрдд рд╣рд╛рд▓рдХреЛ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рдбрд╛рдЯрд╛ рдкрдвреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдЫред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рдХрд╛рд░реНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрди рджрд╛рдпрд╛рдБрддрд┐рд░рдХреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрдпрд╛рдирд▓рдорд╛ рдХреБрдЮреНрдЬреА рдорд╛рди рднрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рд░рд╣реЗрдХреЛ рдХреБрдЮреНрдЬреА рдорд╛рдирд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдбрд╛рдЯрд╛ рдкрдвреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг API

рдореЗрдЯрд╛рдЙрди

рд╕рдорд╛рд░реЛрд╣ рдореЗрдЯрд╛рдЙрди рдХреБрдЮреНрдЬреА рдорд╛рди рдорд╛рд░реНрдлрдд рдмреНрд▓рдХрдЪреЗрдирдорд╛ рдбрд╛рдЯрд╛ рдореЗрдЯрд╛рдЙрди рдЬрд┐рдореНрдореЗрд╡рд╛рд░ рдЫред рддрд▓рдХреЛ рдЙрджрд╛рд╣рд░рдгрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рджрд╛рдпрд╛рдБрддрд┐рд░рдХреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрдпрд╛рдирд▓рдорд╛ рдХрд╛рд░реНрдпрдХреЛ рд▓рд╛рдЧрд┐ рдХреБрдЮреНрдЬреА рдорд╛рди рднрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рдмреНрд▓рдХрдЪреЗрдирдорд╛ рд░рд╣реЗрдХреЛ рдХреБрдЮреНрдЬреА рдорд╛рдирд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдбрд╛рдЯрд╛ рдореЗрдЯрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдУрдиреНрдЯреЛрд▓рдЬреА рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдкрд╛рдЗрдердирдорд╛ рд╕реНрдорд╛рд░реНрдЯ рдЕрдиреБрдмрдВрдз рдХрд╕рд░реА рд▓реЗрдЦреНрдиреЗред рднрд╛рдЧ реи: рднрдгреНрдбрд╛рд░рдг API

2. рднрдгреНрдбрд╛рд░рдг API рдХреЛрдб рдЙрджрд╛рд╣рд░рдг

рддрд▓рдХреЛ рдХреЛрдбрд▓реЗ рдкрд╛рдБрдЪ API рд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрдХреЛ рд╡рд┐рд╕реНрддреГрдд рдЙрджрд╛рд╣рд░рдг рджрд┐рдиреНрдЫ: GetContext, Get, Put, Delete рд░ GetReadOnlyContextред рддрдкрд╛рдИрдВ API рдбрд╛рдЯрд╛ рдЪрд▓рд╛рдЙрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд╕реНрдорд╛рд░реНрдЯ рдПрдХреНрд╕.

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)

рдкрдЫрд┐рд╢рдмреНрдж

рдмреНрд▓рдХрдЪреЗрди рднрдгреНрдбрд╛рд░рдг рд╕рдореНрдкреВрд░реНрдг рдмреНрд▓рдХрдЪреЗрди рдкреНрд░рдгрд╛рд▓реАрдХреЛ рдореВрд▓ рд╣реЛред Ontology рднрдгреНрдбрд╛рд░рдг API рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд░ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рдЫред

рдЕрд░реНрдХреЛрддрд░реНрдл, рднрдгреНрдбрд╛рд░рдг рднрдиреЗрдХреЛ рд╣реНрдпрд╛рдХрд░ рдЖрдХреНрд░рдордгрд╣рд░реВрдХреЛ рдХреЗрдиреНрджреНрд░рдмрд┐рдиреНрджреБ рд╣реЛ, рдЬрд╕реНрддреИ рд╣рд╛рдореАрд▓реЗ рдЕрдШрд┐рд▓реНрд▓реЛ рд▓реЗрдЦрд╣рд░реВ рдордзреНрдпреЗ рдПрдЙрдЯрд╛рдорд╛ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░реЗрдХрд╛ рд╕реБрд░рдХреНрд╖рд╛ рдЦрддрд░рд╛рд╣рд░реВред рднрдгреНрдбрд╛рд░рдг рдЗрдВрдЬреЗрдХреНрд╢рди рдЖрдХреНрд░рдордгрднрдгреНрдбрд╛рд░рдгрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдХреЛрдб рд▓реЗрдЦреНрджрд╛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рд╕реБрд░рдХреНрд╖рд╛рдорд╛ рд╡рд┐рд╢реЗрд╖ рдзреНрдпрд╛рди рджрд┐рди рдЖрд╡рд╢реНрдпрдХ рдЫред рддрдкрд╛рдИрдВ рд╣рд╛рдореНрд░реЛ рдорд╛ рдкреВрд░реНрдг рдЧрд╛рдЗрдб рдкрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ GitHub рдпрд╣рд╛рдБред

рдЕрд░реНрдХреЛ рд▓реЗрдЦрдорд╛ рд╣рд╛рдореА рдХрд╕рд░реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдЫрд▓рдлрд▓ рдЧрд░реНрдиреЗрдЫреМрдВ рд░рдирдЯрд╛рдЗрдо API.

рд▓реЗрдЦ рд╡рд┐рд╢реЗрд╖ рдЧрд░реА OntologyRussia рдХреЛ рд▓рд╛рдЧрд┐ Hashrate & Shares рдХреЛ рд╕рдореНрдкрд╛рджрдХрд╣рд░реБ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд╡рд╛рдж рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рд░реБрдиреБ

рддрдкрд╛рдИрдВ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛ рд╣реБрдиреБрд╣реБрдиреНрдЫ? рд╣рд╛рдореНрд░реЛ рдкреНрд░рд╛рд╡рд┐рдзрд┐рдХ рд╕рдореБрджрд╛рдпрдорд╛ рд╕рд╛рдореЗрд▓ рд╣реБрдиреБрд╣реЛрд╕реН рддреНрдпрд╛рдЧред рд╕рд╛рдереИ, рдПрдХ рдирдЬрд░ рд░рд╛рдЦреНрдиреБрд╣реЛрд╕реН рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛ рдХреЗрдиреНрджреНрд░ рдУрдиреНрдЯреЛрд▓рдЬреА, рддрдкрд╛рдЗрдБ рддреНрдпрд╣рд╛рдБ рдердк рдЙрдкрдХрд░рдгрд╣рд░реВ, рдХрд╛рдЧрдЬрд╛рддрд╣рд░реВ рд░ рдзреЗрд░реИ рдзреЗрд░реИ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рд░реНрдпрд╣рд░реВ рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реНред рдХрд╛рд░реНрдп рдкреВрд░рд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдЗрдирд╛рдо рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдирд┐рд╡реЗрджрди рдЧрд░реНрдиреБ рд╡рд┐рджреНрдпрд╛рд░реНрдереАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдУрдиреНрдЯреЛрд▓рдЬреА рдкреНрд░рддрд┐рднрд╛ рдХрд╛рд░реНрдпрдХреНрд░рдордХреЛ рд▓рд╛рдЧрд┐

рдУрдиреНрдЯреЛрд▓реЛрдЬреА

рдУрдиреНрдЯреЛрд▓рдЬреА рд╡реЗрдмрд╕рд╛рдЗрдЯ - GitHub - рддреНрдпрд╛рдЧ - рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рд░реВрд╕реА - twitter - Reddit

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди