01導語
上一期我們介紹了本體Python智能合約的合約執行API,本期我們將討論如何通過NativeAPI來進行本體原生合約調用。原生合約調用最典型的功能就是合約轉賬,這也是整個智能合約最核心的部分。NativeAPI只有1個API。用法如下:
同時,使用Invoke函數需要內建的state函數輔助來封裝參數,用法如下:
下面我們具體講述一下這兩個API的使用方法。在這之前,小伙伴們可以在本體智能合約開發工具SmartX中新建一個合約,跟著我們進行操作。跟以前的API講解一樣,在文章最后我們將給出這次講解的所有源代碼以及視頻講解。
StarkNet生態多個協議發布相同04.28.23短視頻:4月25日消息,以太坊 Layer2 網絡 StarkNet、以太坊 Layer2 擴容開發團隊 StarkWare、StarkNet 生態自托管錢包 Braavos 等多個 StarkNet 生態協議發布相同 04.28.23 短視頻。[2023/4/25 14:25:58]
02NativeAPI使用方法
同樣,使用這兩個函數前需要引入。下面兩條語句分別引入了這兩個函數。
2.1本體原生合約列表
目前,本體可供使用的原生合約有六個。以下就是可以使用NativeAPI調用的原生合約列表:
Zhu Su:將推出長視頻播客系列,討論生活和心理健康等:11月28日消息,三箭資本聯合創始人Zhu Su發推文表示,其將和一個名為Cliff的好友很快將推出一個長視頻播客系列,討論生活、信仰系統和心理健康。
Cliff是Zhu Su相識十多年的好友,曾在加入三箭資本一年后離開,自此5年未聯系過。Zhu Su稱:“今年6月,三箭資本暴雷后,他給我發信息,讓我來巴厘島見他。我無法理解生活的意義。當我們再次成為最好的朋友時,得到的東西失去了,失去的東西又得到了。當秋天天氣變得涼爽時,生活又重新開始了。”
此前7月份消息,三箭資本已根據美國破產法第15章向紐約法院申請破產保護。雖然Zhu Su仍未透露其位于何地,但仍在推特上持續發聲,近日,他表示其正在考慮建立一個全新的投資交易公司,公司也許是一家既投資加密資產又投資傳統資產的全天候基金。[2022/11/28 21:06:23]
在合約中,將合約地址轉成bytearray形式傳入Invoke即可。例如,需要調用ONTToken合約時,可以先將ONTToken合約對應的地址轉成相應的bytearray形式,再進行相應的Invoke函數調用。在進行Invoke函數調用時,傳入的參數分別為版本號,合約地址,調用的合約方法以及state函數封裝的轉賬相關參數。這里特別要注意的一點是,在進行ONG的合約轉賬時,所填數量是實際數量的10^9倍。即,如果需要轉10個ONG,那么數量需要填為10^10。而在采用ONTO或者Cyano等錢包轉賬時,所填數量即為轉賬數量。
分布式視頻流創業公司Stream發布白皮書的同時 其令牌處于擱置狀態:分布式視頻流創業公司Stream今天發布了一份概述其令牌的白皮書,他們的令牌目前處于擱置狀態,直到該團隊了解到美國的監管機構將如何允許其令牌被使用。據該公司聯合創始人Simar Mangat的說法,目前監管的不確定性和充滿傳聞的環境正使許多人正在考慮將項目“轉移到別處”。[2018/3/14]
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:APIONTSTAEAPMetaPirateAi0x0.ai: AI Smart ContractCosmostarterDOGEAPE
兩個月前,公信寶創始人和CEO黃敏強身著黑色文化衫,在第二屆全球石墨烯區塊鏈開發者大會上侃侃而談,他向與會者匯報公信寶過去一年的開發近況.
1900/1/1 0:00:00ETH看漲期權 代碼月ETH看漲1010期權標的ETH合約類型歐式看漲期權計價單位USDT最小價格單位0.0001USDT合約比例20:1.
1900/1/1 0:00:00尊敬的LOEx用戶:LOEx國際站應IDK項目方要求,于新加坡時間9月18日12:00關閉IDK/LCNY、IDK/ETH交易市場,9月16日12:00開啟IDK/USDT交易市場.
1900/1/1 0:00:00中新經緯客戶端9月16日電據英國《金融時報》16日消息,Facebook周一將就其計劃中的Libra代幣(天秤幣)項目接受全球監管機構的質詢.
1900/1/1 0:00:00過去兩周內以太坊價格有回升勢頭,加密媒體cointelegraph撰文稱,如果市值排名第二的加密貨幣能夠觸底反彈,或許會帶動其他山寨幣的上漲。不過一些分析師對此并不看好.
1900/1/1 0:00:00自VNTChain節點模型及超級節點申請指南公布后,我們收到了來自各方朋友的廣泛關注,包含礦池、交易所、錢包、投資方等多家機構與我們進行了聯絡溝通,明確了加入VNTChain超級節點競選的意愿.
1900/1/1 0:00:00