以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads
首頁 > ICP > Info

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

Author:

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

01導語

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

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

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

國家地理傳奇攝影師Paul Nicklen擔任照片和視頻NFT市場Savage大使:1月20日消息,國家地理傳奇攝影師Paul Nicklen宣布擔任照片和視頻NFT市場Savage大使和項目貢獻者及顧問。據悉,Savage還宣布一個碳中和去中心化應用程序,與Polygon Studios、Crypto Climate Accord和Energy Web合作構建一個碳中和Dapp,借助Polygon Network的權益證明(PoS)共識算法以及Crypto Climate Accord和Energy Web的支持管理碳抵消。[2022/1/20 9:02:15]

02NativeAPI使用方法

央視頻“數字雪花”互動項目上線,用戶可生成獨有的“數字雪花”形象:1月5日,在北京冬奧會開幕倒計時30天之際,中央廣播電視總臺5G新媒體平臺央視頻“數字雪花”互動項目正式上線。該項目將打造全新互動模式,為億萬參與者創造一朵屬于自己的“數字雪花”,提供沉浸式體驗冬奧會、參與冬奧會的獨特方式。

通過央視頻“數字雪花”互動項目,用戶可生成獨有的“數字雪花”形象,并通過上傳照片、愛好選擇、新年祈福等互動活動讓“數字雪花”個性化、專屬化。伴隨著一系列豐富的交互活動,這朵“雪花”將最終成為代表用戶參與冬奧和冰雪運動的數字身份。同時,用戶還可在央視頻APP體驗專屬“雪花”視角,獲得一段專屬獨享的“雪花”驚喜視頻。所有參與用戶還將獲得“我的冬奧數字雪花”特別證書,收獲“每朵雪花,皆為榮耀”的身份感與榮譽感。(中國日報網)[2022/1/6 8:29:37]

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

視頻游戲開發公司收購CashBet將在社交游戲中使用加密貨幣:視頻游戲開發公司Greentube已完成對美國加州區塊鏈項目CashBet大部分CBC加密貨幣,及其底層區塊鏈技術的收購。此次收購將使Greentube能夠在其社交游戲產品組合中使用加密貨幣。(InterGame)[2020/3/10]

2.1本體原生合約列表

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

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

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:APIONTONGEAPapi3幣最新消息MONTEMONGBNBYeap Fun

ICP
長順發內部信:Bit-Z品牌正式升級為BitZ_OIN:BitcoinFast

Bit-Z在中秋前夕進行了品牌升級,Bit-Z的品牌正式升級為BitZ,去掉了中間的“-”。九月恰逢Bit-Z二周年,集團CEO長順發內部信,他提到,品牌升級不是簡單的去掉“-”,而是整個品牌再.

1900/1/1 0:00:00
用糖葫蘆結構解釋區塊鏈基本原理 附上一個腦洞_區塊鏈:比特幣

哈希再哈希,哈希連成串,一串接一串,就是區塊鏈。——村頭二舊區塊鏈四句口訣 作者:村頭二舊 有一種來自東方的暗含著數據結構和經濟模型的神秘食物,名為糖葫蘆.

1900/1/1 0:00:00
火幣Prime首次上線硬件項目 賦能“區塊鏈 硬件”生態建設_RIM:Prime DAI

截止今日15:25,火幣Prime第六期擬上線項目WholeNetwork生態硬件產品三角形手機已售出5220臺,達到5000臺預售目標.

1900/1/1 0:00:00
關于WBFex平臺上線OXE的公告_HTT:CHTT幣

尊敬的WBFex用戶:WBFex即將上線OXE,并在開放區開通OXE/USDT的交易對,具體時間安排如下:充值時間:2019/09/1211:00交易時間:2019/09/1214:00提幣時間.

1900/1/1 0:00:00
關于WBFex平臺上線ETJ的公告_FEX:CEL

尊敬的WBFex用戶: WBFex即將在開放區上線ETJ/USDT交易對,具體時間安排如下:充值時間:2019年9月17日11:00交易時間:2019年9月17日14:00提幣時間:2019年9.

1900/1/1 0:00:00
比特幣能否守住 10000 美金大關 ?| 標準共識_ETH:比特幣

上期回顧 BTC:若成交量始終未能形成放大,BTC的上漲動能將逐步耗盡,再次回歸到下降通道內,若放量突破$11,000關口,則將轉換成上漲趨勢。BTC最低下跌至$9,880,目前處于低位震蕩.

1900/1/1 0:00:00
ads