比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > Filecoin > Info

Rust智能合約養成日記(3)_NET

Author:

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

相關文章:

智能合約養成日記合約狀態數據定義與方法實現

Rust智能合約養成日記編寫Rust智能合約單元測試

在本期Rust智能合約開發Blog中,BlockSec將為大家介紹如何將一個簡單的示例智能合約部署至NEAR測試網絡(TestNet)中,執行合約,并查詢合約的執行結果。

當合約的開發者們實現了合約的主要邏輯,進行了單元測試后,開發者可將該合約項目編譯成WASM字節碼,部署到NEAR的測試鏈上,為最后部署到主網(MainNet)做準備。

1.NEAR網絡介紹

NEARProtocol作為一種協議,意味著可以存在有基于該協議的多種獨立網絡。NEAR協議所制定的規范與標準NEARProtocolSpecificationsandStandards指明了基于NEAR協議的不同鏈,其創世區塊配置GenesisConfig中chain_id各不相同。

我們常用的主要有如下三種網絡:

TestNet

每一個智能合約項目最終都需要在區塊鏈網絡上運行,以實現項目的功能。然而,對于一個新項目來說,項目團隊往往會先將項目部署在測試網(TestNet)上,用來測試該智能合約項目的功能和相關業務邏輯。

Ambrus Studio首款Web3電競MOBA游戲將于7月底發行首批NFT:7月12日消息,前拳頭游戲Riot Games亞太區CEO Johnson創立的Web3游戲公司Ambrus Studio宣布將于7月底發行第一批15個Ultimate版本NFT,并于8月初發行450個Gold版本NFT。據悉,該系列NFT持有者將獲得未來游戲收入分成,包含IP授權、游戲角色皮膚銷售等收入。

E4C:Final Salvation做為AmbrusStudio發行的電競元素MOBA類游戲,未來也會舉辦相關電競賽事,NFT持有者也可以享有賽事相關權益。其中15個Ultimate版本NFT,將以英式拍賣的形式供市場購買;而450個Gold版本NFT將以固定價格公開售賣。[2022/7/12 2:08:26]

MainNet

當合約在測試網絡中進行了多輪的測試和獨立的安全審查之后,開發團隊可以選擇將該合約正式地部署至主網中。

LocalNet

LocalNet不同于TestNet。LocalNet運行于本地,因此部署在該鏈上的合約與交易數據均不向外部網絡公開。如果在合約項目部署至TestNet或MainNet之前,開發者不希望泄漏任何該項目相關的重要信息,LocalNet將是一個不錯的選擇。

灰度CEO:Grayscale Decentraland Trust為投資者接觸元宇宙的一種方式:金色財經報道,Grayscale首席執行官 Michael Sonnenshein 在本周活動上表示,該公司已經將其Grayscale Decentraland Trust視為投資者接觸元宇宙的一種被動方式。?對于那些不一定想積極管理Axie Infinity賬戶或為MANA建立和銷售場景的投資者來說,Grayscale Decentraland Trust一直是一種有吸引力的方式。因此,這是投資者可以考慮將資金投入到一種資產中的一種方式,這種資產將隨著像Decentraland本身這樣的元宇宙的崛起而潛在地升值,這只是幾個應用中的一個。我們一直在尋找我們也能帶給投資者的其他資產。

MANA是灰度Decentraland信托背后的唯一資產,在過去24小時內上漲高達28%。在過去的14天里,MANA的價格已經上漲了超過253%。

Grayscale Decentraland Trust 于 2 月底推出,目前管理著 4920 萬美元。它自成立以來上漲了 943.8%,僅在上個月就上漲了 235.9%。?[2021/11/13 6:49:41]

2.NEARCLI安裝

TrustToken利用Chainlink提供TUSD鏈上儲備證明:穩定幣發行機構TrustToken宣布與Armanino會計師事務所合作,將集成Chainlink推出其TUSD擔保級別儲備金證明系統。(Coindesk)[2020/11/12 12:22:06]

NEARCLI(CommandLineInterface)是一個NodeJS命令行接口,它底層利用near-api-js連接到上述所介紹的網絡中,并與之交互。因此在安裝之前,我們需要首先安裝npm,隨后我們將在Linux中利用npm執行如下安裝命令安裝NEARCLI。

$sudonpminstall-gnear-cli

執行如下命令可查看NEARCLI的安裝版本,并檢查是否安裝成功。

$near--version

3.在TestNet中部署合約

3.1.注冊TestNet賬戶

新用戶可在https://wallet.testnet.near.org頁面中注冊新的TestNet錢包,只需要輸入用戶名即完成注冊,例如statusmessage.testnet。

隨后在https://explorer.testnet.near.org中,我們可以搜索并查看有關TestNet中該賬戶的有關信息,如下所示:

黃金ETF SPDR Gold Trust持倉較上日減少10.51噸:全球最大黃金ETF--SPDR Gold Trust持倉較上日減少10.51噸,當前持倉量為1249.79噸。全球最大白銀ETF--iShares Silver Trust持倉較上日增加128.73噸,當前持倉量為17911.91噸。[2020/11/10 12:09:17]

在TestNet中,每一個新建賬戶中將含有200?的原生余額。?

3.2.在NEARCLI中登錄該賬戶

由于我們已經安裝NEARCLI,且已申請了NEARTestNet中的用戶賬戶。下面可以嘗試在NAERCLI中登錄該賬戶:

$nearlogin

隨著上述命令的執行,NEARCLI將喚起一個鏈接,并需要用戶手動點擊登陸上述statusmessage.testnet賬戶。

3.3.查看賬戶相關信息

同時,我們可以通過NEARCLI查詢特定賬戶的相關信息?

$nearstatestatusmessage.testnetAccountstatusmessage.testnet{??amount:'199999959035075000000000000',???block_hash:'8iomNEFNa4LQB54ehTPBGu8bBfotistoWrBcYJfxm8vA',???block_height:68318068,???code_hash:'11111111111111111111111111111111',???locked:'0',???storage_paid_at:0,???storage_usage:264,???formattedAmount:'199.999959035075'?}

聲音 | BANKORUS總裁:應積極擁抱STO:金色財經獨家現場報道,金色沙龍?破繭系列“STO能否成為區塊鏈行業強心劑”在四分之三區域全球商業中心舉辦,在圓桌會議環節,安華國BANKORUS總裁表示,STO是融資手段和融資模式的更新,對于中小企業及創新企業創業有很大助力,應該積極擁抱STO。金色沙龍系列活動由金色財經主辦,貝殼公關承辦,節點資本聯合主辦。[2018/10/27]

3.4.合約編譯與部署

在將合約部署之前,我們首先需要對合約進行編譯,如下命令可利用cargo編譯得到具體的WASM文件status_message.wasm.它通常位于項目的target/wasm32-unknown-unknown/release/目錄下。

$RUSTFLAGS='-Clink-arg=-s'cargostablebuild--targetwasm32-unknown-unknown--release

同時,我們可以給statusmessage.testnet創建一個子賬戶,名為contract01.statusmessage.testnet,用于合約的部署

$cdtarget/wasm32-unknown-unknown/release$exportMASTER_ACCOUNT=statusmessage.testnet$nearcreate-accountcontract01.$MASTER_ACCOUNT?????????????--initialBalance10?????????????--masterAccount$MASTER_ACCOUNTAccountcontract01.statusmessage.testnetfornetwork"testnet"wascreated.

接著我們便可以使用neardeploy命令來幫助我們部署該合約。

$neardeploy--accountIdcontract01.$MASTER_ACCOUNT\????????????--wasmFilestatus_message.wasm

若合約部署成功,我們可以獲得如下信息:

Startingdeployment.Accountid:contract01.statusmessage.testnet,node:(https://rpc.testnet.near.org),helper:(https://helper.testnet.near.org),file:status_message.wasmTransactionId4oDYA8wPLJuKwDumJxEGubeJBA9Ep13MLXSf34q9ydRmToseethetransactioninthetransactionexplorer,pleaseopenthisurlinyourbrowser(https://explorer.testnet.near.org/transactions/4oDYA8wPLJuKwDumJxEGubeJBA9Ep13MLXSf34q9ydRm)Donedeployingtocontract01.statusmessage.testnet

3.5調用合約函數

當我們成功部署合約至TestNet后,部署該合約的賬戶contract01.statusmessage.testnet,即為該合約的地址。為驗證TestNet中StatusMessage合約是否能夠正常運行。我們可以調用set_status來設定合約內置的屬性。

$nearcall--accountId$MASTER_ACCOUNT\???contract01.$MASTER\_ACCOUNTset\_status'{"message":"Hi!2021"}'

如下是調用該合約中函數set_status返回的信息

Schedulingacall:contract01.statusmessage.testnet.set_status({"message":"Hi!2021"})TransactTransactionIdE9dsw8H9ztDN18DDvXKTBPvBLWHew7TtuWsLgg6uvesNToseethetransactioninthetransactionexplorer,pleaseopenthisurlinyourbrowser(https://explorer.testnet.near.org/transactions/E9dsw8H9ztDN18DDvXKTBPvBLWHew7TtuWsLgg6uvesN)''

可見該筆StatusMessage合約函數調用交易能夠正常執行,并返回了具體的TransactionID,即E9dsw8H9ztDN18DDvXKTBPvBLWHew7TtuWsLgg6uvesN

3.6交易查詢

NEAR為社區提供了一個數據瀏覽查詢平臺NEARExplorer。用戶可以在該平臺中搜索指定網絡中的賬戶ID,交易哈希,交易區塊等實時鏈上信息。

利用該筆交易的ID可以在NEARExplorer查詢具體的交易細節。https://explorer.testnet.near.org/transactions/E9dsw8H9ztDN18DDvXKTBPvBLWHew7TtuWsLgg6uvesN

本期總結和預告

這一期中我們詳細的介紹了如何將一個智能合約編譯,并且部署到測試鏈上,接著如何調用指定的合約中的函數,并且通過explorer查詢特定交易的狀態。通過前三期的Rust智能合約養成日記,相信同學們大概知道如何從頭開始寫一個簡單的合約,并且將其部署。從下一期開始BlockSec將主要從安全的角度,向大家進一步展示如何編寫一個安全的智能合約。

Tags:NETNEARESTTESTMetaPlanet AInear幣中文叫什么Golden Regent InvestmentTEST Token

Filecoin
XT.COM關於恢復KYCC充提的公告_TPS

尊敬的XT.COM用戶:KYCC錢包升級維護已完成,XT.COM現已恢復KYCC充提業務。給您帶來的不便,請您諒解!Binance Labs向Web3游戲平臺和發行商Xterio投資1500萬美.

1900/1/1 0:00:00
XT.COM關於支持DID合約更換的公告_XT.com

尊敬的XT.COM用戶:應DID項目方要求,DID將更換新的合約地址。新合約地址:https://bscscan.com/token/0xe409271E955078BAA4788428a084.

1900/1/1 0:00:00
中幣開放APE和MINA提幣業務_FUTU

尊敬的中幣用戶: ????中幣現已開放APE和MINA提幣業務。感謝您對中幣的支持與信任! 中幣運營團隊 中幣ATOM新幣上線福利回饋活動:據官方消息,3月18日,中幣(ZB)平臺上線ATOM/.

1900/1/1 0:00:00
Gate.io Startup:Juventus Fan Token (JUV) Sale Result & Listing Schedule

1JuventusFanToken(JUV)TokenSaleResultTheGate.ioStartupJuventusFanToken(JUV)saleresultisasfollows:.

1900/1/1 0:00:00
一文對比三大異構區塊鏈網絡:Cosmos、Polkadot、Avalanche_區塊鏈

原文作者:@arikan 原文編譯:DeFi之道 開放去中心化互聯網的承諾正在受到第一代加密網絡比特幣、以太坊及其變體的性能、可用性和能源效率問題的挑戰.

1900/1/1 0:00:00
A&T Talk:古典VC為何改「道」,和Web2 VC聊Web3_WEB

本期重點: 大家是從什么時候開始相信Web3的?Web3最令人期待的東西是什么?在實現Web3的道路上最大的阻礙是什么?Web2公司想轉型Web3需要改變什么?如何從Web3的視角看待Web2存.

1900/1/1 0:00:00
ads