買以太坊 買以太坊
Ctrl+D 買以太坊
ads

ACT:本體技術視點 | Python智能合約開發學起來_Decentra Box

Author:

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

01前言

在之前的技術視點文章中,我們介紹了目前本體主網支持的智能合約體系以及相應的智能合約開發工具SmartX。很多小伙伴都想上手練一練。在本期的本體技術視點中,我們將正式開始講述智能合約語法部分。本體的智能合約API分為7個模塊,分別是Blockchain&BlockAPI、RuntimeAPI、StorageAPI、NativeAPI、UpgradeAPI、ExecutionEngineAPI以及Static&DynamicCallAPI。本期我們將介紹?Blockchain&BlockAPI,這是本體智能合約體系中最基礎的部分。其中,BlockchainAPI支持基本的區塊鏈查詢操作,如獲取當前塊高等;BlockAPI支持基本的區塊查詢操作,如查詢指定區塊交易數等。同時,文末將提供視頻講解。

現場 | 本體去中心化數字身份解決方案DeID集成至波卡平臺:金色財經現場報道,在10月29日由 Web3 基金會主辦的Web3大會上,本體宣布正在波卡(Polkadot)鏈上進行開發,將本體去中心化數字身份(Decentralized Identity, DeID)集成到波卡鏈上,并計劃搭建波卡平行鏈。該合作將加速本體與波卡鏈上生態的融合,為用戶帶來更深層次的信任和更為自主的數據管理體驗。此外,本體信用分 OScore和DDXF 等技術也將逐步應用到波卡生態中,使其它區塊鏈也可便捷地使用本體 DeID 解決方案。[2020/10/29]

在這之前,小伙伴們可以在本體智能合約開發工具SmartX中新建一個合約,跟著我們進行操作。

聲音 | 本體創始人李俊:區塊鏈要在不同行業創造新的生態所以落地難:本體創始人李俊在接受采訪時表示,區塊鏈和大數據和AI等技術的發展路徑不同,一個是增強了生產力,一個是要創造更好的生產關系,所以區塊鏈的落地和推進很難通過對某個企業的合作和集成來進行。必須要在不同行業創造新的生態,這也造成區塊鏈的落地,將會是一件非常有挑戰的事情。而且區塊鏈的公司目前又是中小型的創業公司為主,更增加了難度。[2018/12/31]

02?BlockchainAPI使用方法

智能合約函數的引用與Python的引用如出一轍。開發者可以根據需要引入相應的函數。例如,下面語句引入了獲取當前最新塊高函數GetHeight和獲取區塊頭函數GetHeader。

動態 | 本體將進一步發展基于ONT ID的信任協同應用體系:7月28日消息,本體在其官方微信公眾號中發布下一階段規劃:日后,本體在持續優化主鏈基礎設施之外,將集中于本體應用生態和同構鏈跨鏈原型的實現和商業試點,進一步發展基于ONT ID的信任協同應用體系。[2018/7/28]

2.1?GetHeight

開發者可以使用GetHeight來獲取當前最新塊高,具體例子如下。在后面的例子中,為了節省空間,我們將省略Main函數,小伙伴在練習的時候可以根據需要加入。

2.2?GetHeader

開發者可以使用GetHeader來獲取區塊頭,參數是某個塊的塊高。具體例子如下:

本體創始人:公有鏈真正提供的產品是哲學和價值觀:Ontology本體創始人李俊今日在第二屆區塊鏈新金融高峰論壇上表示,公有鏈真正提供的產品是哲學和價值觀,不過這些價值觀無關對錯好壞,只看是否適合,“用戶喜歡哪一套哲學就在哪個項目里玩”。而這一點傷,國外團隊做得比較好,中國則相對較弱,更傾向于以技術、以團隊、以錢服人,不過本體希望能夠在這個方面做到世界領先水平。[2018/6/6]

2.3GetTransactionByHash

開發者可以使用GetTransactionByHash函數通過交易哈希獲取交易。交易哈希以bytearray的格式,作為參數傳入GetTransactionByHash。這個函數的關鍵在于如何轉換將十六進制格式的交易哈希轉變為bytearray格式的交易哈希。我們以16進制格式的交易哈希為例,實現將十六進制格式的交易哈希轉變為bytearray格式的交易哈希。示例哈希如下:

首先,將該交易哈希反序得到:

開發者可以通過SmartX提供的轉換工具HexNumber(littleendian)<-->Number實現這一步。然后,將其轉成bytearray格式:

開發者可以通過SmartX提供的轉換工具String<-->ByteArray實現這一步。最后,將得到的bytearray轉換成相應的字符串:

GetTransactionByHash函數通過交易哈希獲取交易的例子如下:

2.4?GetTransactionHeight

開發者可以使用GetTransactionHeight函數通過交易哈希獲取交易高度。我們還是以上個例子中的哈希為例:

2.5?GetContract

開發者可以使用GetContract函數通過合約哈希獲取合約。其中,合約哈希的轉換過程與上面講到的交易哈希轉換過程一致。

2.6?GetBlock

開發者可以使用GetBlock函數獲取區塊。有兩種方法可以獲取指定區塊:1.通過塊高獲取區塊:

2.通過區塊哈希獲取區塊:

03?BlockAPI使用方法

BlockAPI中可供引用的函數有三個,它們分別是GetTransactions、GetTransactionCount和GetTransactionByIndex。我們依次介紹下這三個函數。

3.1?GetTransactionCount

開發者可以使用GetTransactionCount函數獲取指定區塊的交易數量。

3.2?GetTransactions

開發者可以使用GetTransactions函數獲取獲取指定區塊的所有交易。

3.3GetTransactionByIndex

開發者可以使用GetTransactionByIndex函數獲取指定區塊的指定交易。

04?后記

Blockchain&BlockAPI在智能合約中起到查詢區塊鏈數據和區塊數據的作用,是智能合約最不可缺少的一部分。在后面的技術視點中,我們將討論如何使用其它API,探討它們和本體區塊鏈的交互。本期講述的所有語法部分我們提供了中文視頻,小伙伴們可以觀看和學習。

視頻觀看鏈接:https://v.qq.com/x/page/x0822d6u8xl.html

*詳細代碼信息可能顯示不全,可參考:https://mp.weixin.qq.com/s/t1sX3aDi5WVTthnc4sMHkQ

Tags:GETTRAACTIONtogetherbnb艾米莉攻略雙人互動Decentra BoxXACTjubilations

以太坊交易
區塊鏈:下一代區塊鏈混合網絡——GMPC_混合鏈

比特幣暴漲,Facebook官宣發幣Libra,央行20天三次發聲談數字貨幣...2019年乃至未來的金融圈已離不開數字貨幣,而區塊鏈作為數字貨幣的底層支撐技術是比特幣如此成功的根本原因.

1900/1/1 0:00:00
BCH:關于WBFex上線ASC的公告_HTT

尊敬的WBFex用戶: WBFex即將在開放區上線ASC/USDT交易對,具體情況如下:充幣時間:2019年9月3號10:00交易時間:2019年9月3號14:00提幣時間:2019年9月10號.

1900/1/1 0:00:00
YOU:EDP_REDPANDA價格

EDP 區塊瀏覽器:https://etherscan.io/address/0x2802ba94e432ed58f4e7f34060d72fc19b5af124YouSwap將于9月2日新增F.

1900/1/1 0:00:00
KEN:區塊鏈世界與現實世界最大的矛盾點是什么?_vechainblockchaintoken

一、區塊鏈,天使還是惡魔?目前社會上對區塊鏈的看法有兩種極端,第一種是認為區塊鏈是未來,是非常偉大的創新,是繼互聯網之后最偉大的科技革命;另外一種看法則認為區塊鏈沒有實際意義,無法落地.

1900/1/1 0:00:00
AND:比特幣價格研究——三種碾壓持幣的策略|標準共識_什么是比特幣工廠

Overview概述 重點一:三種交易策略操作頻率低,模仿難度低,測試區間內盈利均超過單純持有比特幣,分別為212.43%、142.59%和144.76%,但最大回撤大約30%.

1900/1/1 0:00:00
ONE:生態鏈(CEC0)即將上線BIONE交易所_COSMIC

尊敬的BIONE用戶: 您好,很高興的通知您,生態鏈已通過BIONE交易所上幣審核,將于近期上線,后續具體上線時間以及活動請繼續關注交易所公告,敬請期待.

1900/1/1 0:00:00
ads