以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads
首頁 > PEPE > Info

API:視頻| 本體技術視點 | Python智能合約教程之原生合約調用

Author:

Time:1900/1/1 0:00:00

01導語

上一期我們介紹了本體Python智能合約的合約執行API,本期我們將討論如何通過NativeAPI來進行本體原生合約調用。原生合約調用最典型的功能就是合約轉賬,這也是整個智能合約最核心的部分。NativeAPI只有1個API。用法如下:

同時,使用Invoke函數需要內建的state函數輔助來封裝參數,用法如下:

下面我們具體講述一下這兩個API的使用方法。在這之前,小伙伴們可以在本體智能合約開發工具SmartX中新建一個合約,跟著我們進行操作。跟以前的API講解一樣,在文章最后我們將給出這次講解的所有源代碼以及視頻講解。

Filecoin和以太坊視頻直播平臺Livepeer合作推出File.video:Filecoin和以太坊視頻直播平臺Livepeer合作推出File.video。File.video是一個實驗性的去中心化視頻托管平臺,可用于上傳和共享視頻。用戶可免費使用,無需注冊,目前僅支持MP4格式,最高支持30mb文件大小。[2021/3/21 19:04:31]

02NativeAPI使用方法

同樣,使用這兩個函數前需要引入。下面兩條語句分別引入了這兩個函數。

2.1本體原生合約列表

目前,本體可供使用的原生合約有六個。以下就是可以使用NativeAPI調用的原生合約列表:

委內瑞拉石油幣支持PetroDivisa將在成人網站發布加密貨幣宣傳視頻:1月18日消息,委內瑞拉國家數字貨幣石油幣(Petro)的最大推手之一、匿名交易員PetroDivisa正在OnlyFans上教人們如何交易和宣傳加密貨幣。這位匿名交易員最近向其7.9萬名粉絲發了一條推文,稱他們將開設一個OnlyFans賬戶,以便更接近自己的粉絲。雖然OnlyFans是一個以成人娛樂著名的平臺,但PetroDivisa表示只會在該網站上發布如何購買和交易。(Decrypt)[2021/1/18 16:25:49]

在合約中,將合約地址轉成bytearray形式傳入Invoke即可。例如,需要調用ONTToken合約時,可以先將ONTToken合約對應的地址轉成相應的bytearray形式,再進行相應的Invoke函數調用。在進行Invoke函數調用時,傳入的參數分別為版本號,合約地址,調用的合約方法以及state函數封裝的轉賬相關參數。這里特別要注意的一點是,在進行ONG的合約轉賬時,所填數量是實際數量的10^9倍。即,如果需要轉10個ONG,那么數量需要填為10^10。而在采用ONTO或者Cyano等錢包轉賬時,所填數量即為轉賬數量。

二十國集團財長和央行行長舉行特別視頻會議:3月23日,二十國集團(G20)主席國沙特主持召開G20財長和央行行長特別視頻會議,討論新冠肺炎疫情對全球影響和G20下一步應對行動。財政部部長劉昆出席會議并發言,副部長鄒加怡、廖岷陪同出席。會議認為,新冠肺炎疫情對全球經濟造成嚴重影響,尤其給發展中國家帶來巨大挑戰。G20各方應積極采取所有可用的政策措施支持經濟增長,保持市場流動性,并加強政策協調合作,共同阻止疫情蔓延,同時盡量減少出口限制,穩定國際貿易,維護全球供應鏈。劉昆表示,疫情是全人類共同面臨的挑戰,G20國家應本著團結協作、尊重科學的精神,及時采取行動,統籌疫情防控和經濟金融穩定。(金十)[2020/3/25]

2.2轉賬合約代碼

下面我們給出一個完整的示例,演示如何使用Python語言來實現ONT以及ONG的轉賬功能。下述代碼以傳入的轉出賬戶和轉入地址參數類型為string為例實現該合約。另外,也可以以address為類型的賬戶參數進行傳遞,從而達到節省調用Gas費用的目的。該合約代碼流程如下:

定義合約地址變量contract_address_ONT,contract_address_ONG;

將轉出地址和轉入地址從base58格式轉成bytearray格式;

驗簽,確認轉出地址與合約調用地址為同一地址;

state函數封裝轉賬相關參數;

Invoke函數調用ONTToken和ONGToken原生合約轉賬;

通過返回res判斷轉賬是否成功。返回值b''為成功,成功則推送事件“transfersucceed”。

03SmartX實踐

接下來,小伙伴們可以在SmartX上進行操作,動手編譯和運行上述提供的合約示例代碼。具體步驟如下:1.編譯合約。首先在SmartX中新建一個合約項目,并將代碼放入該項目中進行編譯。

2.部署合約。部署過程中如需申請測試幣,申請地址為https://developer.ont.io/applyOng。部署結果示意如下:

3.執行轉賬。執行transfer函數進行轉賬前需要進行相關參數設置。在該示例中,需要填入發送地址、接收地址、代轉賬的ONT數量以及ONG數量:

4.轉賬成功。當轉帳參數設置正確時,執行transfer函數將轉賬成功。上面所填的接收地址中將顯示出收到的代幣:

04總結

本次技術視點中我們介紹了本體區塊鏈的NativeAPI,開發者可以使用NativeAPI來進行本體原生合約調用。原生合約調用最典型的功能就是合約轉賬,這也是整個智能合約最核心的部分。在下一期技術視點中,我們將介紹UpgradeAPI,探討如何在本體智能合約中進行合約升級。本期講述的所有語法部分我們提供了中文視頻,小伙伴們可以觀看學習。

Tags:APIONTEAPONGFortem CapitalThe Moontography ProjectLeapableIOmongoose幣怎么樣

PEPE
APP:DApp:開發一條龍 測試一條蟲?

2017年,這一年有點特別,許多先進的技術和新的概念集中在這一年迸發。小程序火了、新零售火了、區塊鏈火了、人工智能火了、物聯網也火了.

1900/1/1 0:00:00
HTT:關于WBFex即將上線OT的公告

尊敬的WBFex用戶:WBFex即將在開放區上線OT/USDT交易對,具體上線時間請關注官方公告.

1900/1/1 0:00:00
ZZEX Global將于9月30日15:00首發上線Star block chain(STBC)

尊敬的用戶: ZZEX交易所將于2019年9月30日15:00首發上線Starblockchain(STBC),支持STBC/USDT交易對.

1900/1/1 0:00:00
BAR:關于 EOST 正式上線以及活動的公告

尊敬的EZB用戶: EZB計劃于2019年9月16日16:00時開放EOST充提功能。2019年9月16日16:00時上線EOST,并開通EOST/USDT交易市場,邀您參與交易!EOST簡介:.

1900/1/1 0:00:00
BIKI:BiKi平臺關于首發上線BXS的公告(0916)

尊敬的用戶: BiKi即將開放BXS的充值、提現,并開放BXS/USDT交易對,具體時間如下:1、開放充值時間:9月19日12:00;2、開放提現時間:9月19日12:00;3、開放交易時間:9.

1900/1/1 0:00:00
KEX:BKEX Global 關于上線 CMC 并開通充提功能的公告

親愛的BKEXer: BKEXGlobal將于新加坡時間2019年9月16日19:00上線CMC?.

1900/1/1 0:00:00
ads