本篇內(nèi)容主要講解“怎么部署智能合約到infura中”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“怎么部署智能合約到infura中”吧!
創(chuàng)新互聯(lián)公司網(wǎng)絡(luò)公司擁有十年的成都網(wǎng)站開(kāi)發(fā)建設(shè)經(jīng)驗(yàn),成百上千客戶(hù)的共同信賴(lài)。提供成都網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站開(kāi)發(fā)、網(wǎng)站定制、買(mǎi)鏈接、建網(wǎng)站、網(wǎng)站搭建、響應(yīng)式網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)師打造企業(yè)風(fēng)格,提供周到的售前咨詢(xún)和貼心的售后服務(wù)
在這個(gè)特定的例子中,我們將遷移到Ropsten測(cè)試網(wǎng)絡(luò)。 我們假設(shè)你已經(jīng)有了一個(gè)dapp, 如果需要一個(gè)測(cè)試dapp,可以使用Truffle提供的寵物店dapp。
Infura的HDWalletProvider是一個(gè)獨(dú)立的npm軟件包,如下安裝:
npm install truffle-hdwallet-provider
注意 :如果你在Windows上安裝并且遇到MSBUILD錯(cuò)誤,則可能需要安裝Windows構(gòu)建工具。 在具有管理員權(quán)限的控制臺(tái)中,運(yùn)行
npm install -g windows-build-tools
然后再次嘗試安裝。
在使用Infura之前,需要注冊(cè)Infura訪(fǎng)問(wèn)令牌 。
填寫(xiě)并提交表格后你就可以收到訪(fǎng)問(wèn)令牌。 相關(guān)信息將顯示在屏幕上并發(fā)送到你提供的電子郵件。 需要記錄下來(lái)這個(gè)訪(fǎng)問(wèn)令牌并確保它不被別人看到!
下一步是編輯你的truffle.js文件來(lái)啟用HDWalletProvider并為部署到Ropsten進(jìn)行必要的配置。
STEP 1:首先,在配置文件中定義HDWalletProvider對(duì)象。 在truffle.js文件的頂部添加以下代碼:
var HDWalletProvider = require("truffle-hdwallet-provider");
STEP 2:接下來(lái),提供助記詞(mnemonic
)來(lái)生成你的賬戶(hù)。
var mnemonic = "orange apple banana ... ";
警告 :在此過(guò)程中,我們強(qiáng)烈建議將助記符存儲(chǔ)在另一個(gè)(秘密)文件中,以降低助記符泄漏風(fēng)險(xiǎn)。 如果有人知道你的助記符,他們將擁有你所有的地址和私鑰!
STEP 3:添加Ropsten網(wǎng)絡(luò)定義:
module.exports = { networks: { ropsten: { provider: function() { return new HDWalletProvider(mnemonic, "https://ropsten.infura.io/<INFURA_Access_Token>") }, network_id: 3 } } };
注意事項(xiàng):
雖然該示例僅定義了單個(gè)網(wǎng)絡(luò),但你可以像往常一樣定義多個(gè)網(wǎng)絡(luò)。
ropsten網(wǎng)絡(luò)定義中的provider將使用實(shí)例化的HDWalletProvider 。
HDWalletProvider以助記符和期望的網(wǎng)絡(luò)為參數(shù)。 Infura主頁(yè)上提供Infura支持的 網(wǎng)絡(luò)列表。
確保使用前面拿到的Infura訪(fǎng)問(wèn)令牌替換<INFURA_Access_Token> 。
provider值被封裝在一個(gè)函數(shù)中,這可以確保它在需要之前不會(huì)被初始化。 如果連接到多個(gè)網(wǎng)絡(luò),這一點(diǎn)尤為重要。 關(guān)于該主題的更多信息,請(qǐng)參閱Truffle文檔的網(wǎng)絡(luò)配置部分。
默認(rèn)情況下,由助記符產(chǎn)生的第一個(gè)賬戶(hù)將負(fù)責(zé)執(zhí)行合約遷移任務(wù)。 但如果需要的話(huà),你可以傳入?yún)?shù)以指定要使用的帳戶(hù)。 例如,要使用第三個(gè)帳戶(hù):
new HDWalletProvider(mnemonic, "https://ropsten.infura.io/<Infura_Access_Token>", 2);
賬戶(hù)索引是從零開(kāi)始的,所以2表示第三個(gè)地址。
確保你的帳戶(hù)有足夠的賬戶(hù)余額來(lái)進(jìn)行部署。 可以通過(guò)稱(chēng)Faucet的服務(wù)在Ropsten網(wǎng)絡(luò)上獲取Ether。 雖然在那里有多個(gè)Faucet網(wǎng)站,我們推薦的一個(gè)服務(wù)是在EthTools上托管的 。
導(dǎo)航至EthTools的Ether Faucet 。
輸入你的助記符,并選擇你想要多少ether(最多5個(gè))。
Faucet將鏈接到你的第一個(gè)帳戶(hù)。 點(diǎn)擊“Request Ether”提交請(qǐng)求。
很快,你的賬戶(hù)將獲得請(qǐng)求的ether。
注意 :也可以通過(guò)MetaMask申請(qǐng)ether。 在Ropsten上連接你的帳戶(hù),然后點(diǎn)擊“Buy”按鈕,該按鈕將提供MetaMask的Ropsten測(cè)試Faucet的鏈接,它的工作方式與上述類(lèi)似。
我們現(xiàn)在可以開(kāi)始將合約部署到Ropsten上了!
STEP 1: 編譯項(xiàng)目:
truffle compile
STEP 2:部署到Ropsten網(wǎng)絡(luò):
truffle migrate --network ropsten
如果一切順利,應(yīng)該可以看到類(lèi)似于以下內(nèi)容的輸出:
Using network 'ropsten'. Running migration: 1_initial_migration.js Deploying Migrations... ... 0xd79bc3c5a7d338a7f85db9f86febbee738ebdec9494f49bda8f9f4c90b649db7 Migrations: 0x0c6c4fc8831755595eda4b5724a61ff989e2f8b9 Saving successful migration to network... ... 0xc37320561d0004dc149ea42d839375c3fc53752bae5776e4e7543ad16c1b06f0 Saving artifacts... Running migration: 2_deploy_contracts.js Deploying MyContract... ... 0x7efbb3e4f028aa8834d0078293e0db7ff8aff88e72f33960fc806a618a6ce4d3 MyContract: 0xda05d7bfa5b6af7feab7bd156e812b4e564ef2b1 Saving successful migration to network... ... 0x6257dd237eb8b120c8038b066e257baee03b9c447c3ba43f843d1856de1fe132 Saving artifacts...
需要提醒的是,你的交易ID將與上面的不同。
注意 :如果收到錯(cuò)誤Error: Exceeds block gas limit
,你可能需要為合約手動(dòng)設(shè)置油量上限(gas limit
)。
STEP 3:如果想驗(yàn)證合約是否已成功部署,可以在Etherscan的Ropsten部分進(jìn)行檢查。 在搜索字段中,輸入部署交易ID。 在上面的例子中,交易ID是:
0x7efbb3e4f028aa8834d0078293e0db7ff8aff88e72f33960fc806a618a6ce4d3
你應(yīng)該可以看到有關(guān)交易的詳細(xì)信息,包括交易受到保護(hù)的區(qū)塊號(hào)。
到此,相信大家對(duì)“怎么部署智能合約到infura中”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!
當(dāng)前名稱(chēng):怎么部署智能合約到infura中
本文地址:http://aaarwkj.com/article12/ijhogc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、手機(jī)網(wǎng)站建設(shè)、商城網(wǎng)站、響應(yīng)式網(wǎng)站、定制開(kāi)發(fā)、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)