比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

火幣科普系列:兼容以太坊開發環境 開發者如何參與Heco開發?_ETH

Author:

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

火幣生態鏈火幣生態鏈是一個去中心化高效節能公鏈,也是火幣開放平臺推出的首個產品,在支撐高性能交易的基礎上,實現智能合約的兼容。Heco的原生數字資產為HT,采用HPoS共識機制。

Heco也是以太坊友好的開發平臺,兼容以太坊開發環境和工具,有以太坊智能合約開發經驗的開發者可以輕松上手。

為幫助開發者更好地使用Heco進行開發,本文將Heco的開發流程大致闡述。

首先要完成源碼下載,通過git下載源碼。

gitclonehttps://github.com/HuobiGroup/huobi-eco-chain.git

在拿到源碼后,需要把源代碼轉換成機器可以識別的二進制語言,組合成為一個系統可以執行的可執行文件,即完成編譯過程。編譯支持Go語言。區塊鏈開發較為復雜,而Go語言具有更好的便捷性,對開發者更為友好。

編譯:

cd/path/to/hecochain

makegeth

如果希望進行跨平臺編譯,某些在Mac上編譯Linux平臺的二進制文件,可以使用makegeth-linux相關命令操作。編譯完成后,生成的二進制文件在build/bin目錄下。

運行:

通過./build/bin/geth--help查看所有的option選項,根據情況自行設置相關配置參數。

網絡接入

程序啟動替換接入mainnet,如需接入公共測試網,可添加option?--testnet。

部署:引入系統管理配置

鏈節點

·?config.toml

SyncMode="fast"

DiscoveryURLs=

TrieCleanCacheRejournal=300000000000

GasFloor=8000000

GasCeil=8000000

GasPrice=0

Recommit=3000000000

Noverify=false

CacheDir="ethash"

CachesInMem=2

CachesOnDisk=3

CachesLockMmap=false

DatasetDir="/data/heco/data/.ethash"

韓法院對Terraform Labs聯創等8人進行首次公審準備,將判定LUNA是否為證券:7月11日消息,韓國首爾南部地方法院對涉嫌違反《資本市場法》的Terraform Labs聯合創始人Daniel Shin和其他七名同事等8人進行了首次公審準備,也是Terra事件在韓國國內的首次審判,其中檢方認為LUNA是投資證券合同,應受到資本市場法的限制,而Daniel Shin主張Terra和LUNA并非證券。消息人士表示,如果審判通過,LUNA被認定為證券,那么《資本市場法》將會擴大到虛擬資產行業,一部分加密貨幣被分類為未注冊證券,有可能會被中止上市。[2023/7/11 10:47:08]

DatasetsInMem=1

DatasetsOnDisk=2

DatasetsLockMmap=false

PowMode=0

Locals=

NoLocals=false

Journal="transactions.rlp"

Rejournal=3600000000000

PriceLimit=1

PriceBump=10

AccountSlots=16

GlobalSlots=4096

AccountQueue=64

GlobalQueue=1024

Lifetime=10800000000000

DataDir="/data/heco/data"

InsecureUnlockAllowed=true

NoUSB=true

IPCPath="geth.ipc"

HTTPHost="0.0.0.0"

HTTPPort=8545

HTTPCors=

HTTPVirtualHosts=

HTTPModules=

WSHost="0.0.0.0"

WSPort=8546

WSModules=

GraphQLVirtualHosts=

MaxPeers=50

NoDiscovery=false

ListenAddr=":32668"

EnableMsgEvents=false

Sentiment攻擊者已歸還約48萬美元的被盜資金:金色財經報道,鏈上數據顯示,DeFi借貸協議Sentiment的攻擊者已經歸還了250枚ETH(約48萬美元)的被盜資金。此前報道,Sentiment被盜資產約100萬美元,其中包含0.5枚WBTC、30枚WETH、53.8萬枚USDC和36萬枚USDT。[2023/4/6 13:47:13]

ReadTimeout=30000000000

WriteTimeout=30000000000

IdleTimeout=120000000000

在配置中使用快速同步,如果需要完全同步,請刪除此行:

SyncMode="fast"

啟動bash

·?config.toml

#!/usr/bin/envbash

/data/heco/geth-linux-amd64

--config/data/heco/config.toml?

--logpath/data/heco/logs

--verbosity3?>>/data/heco/logs/systemd_chain_console.out2>&1

如果需要將其用作存檔節點,請添加:

--syncmodefull

--gcmodearchive

因此:

#!/usr/bin/envbash

/data/heco/geth-linux-amd64

--config/data/heco/config.toml?

--logpath/data/heco/logs

--syncmodefull

--gcmodearchive

--verbosity3?>>/data/heco/logs/systemd_chain_console.out2>&1

系統配置

Description=huobismartchainservice

Type=simple

ExecStart=/bin/sh/data/heco/run.sh

Restart=on-failure

RestartSec=5s

西班牙加密交易所Bit2Me收購軟件開發公司Dekalabs:10月24日消息,西班牙加密貨幣交易所 Bit2Me 收購專注于加密貨幣和區塊鏈的軟件開發公司 Dekalabs,收購的具體金額未披露。此次收購將提高 Bit2Me 在幫助公司和機構在比特幣和以太坊等加密貨幣和區塊鏈協議上開發工具的能力。

據悉,Bit2Me 是第一家獲得西班牙中央銀行許可的加密服務提供商。[2022/10/24 16:37:09]

LimitNOFILE=65536

鏈上互動

Heco與以太坊的生態系統兼容,支持所有以太坊的RPCAPI和DK

RPC

RPC方法列表

例如:

?curl-s-H'content-type:application/json'-d'{"jsonrpc":"2.0","method":"web3_clientVersion","params":,"id":67}'http://localhost:8545

開發包

使用諸如web3j、web3js等以太坊SDK庫進行開發。

獲取鏈上信息

constWeb3=require('web3')

asyncfunctiongetChainId(){

????constweb3=newWeb3('https://http-mainnet.hecochain.com')

????letchainId=awaitweb3.eth.getChainId()

????console.log(`chainid:${chainId}`)

????returnchainId

}

生成帳戶

constWeb3Accounts=require('web3-eth-accounts')

letaccount=newWeb3Accounts().create()

//donotdothisonprdenv

console.log(`accountgenerated.address:${account.address},privatekey:${account.privateKey}`)

生成事務

constWeb3=require('web3')

asyncfunctiontransfer(fromAccount,to,value){

以太坊合并進度完成99.65%,全網平均算力降至876TH/S:9月12日消息,據OKLink多鏈瀏覽器“以太坊合并倒計時”頁面顯示,當前以太坊合并進度已完成99.65%,按照當前網絡情況計算,合并預計將于9月15日進行。當前以太坊全網平均算力876TH/S。[2022/9/12 13:24:18]

????constweb3=newWeb3('https://http-mainnet.hecochain.com')

????letchainId=awaitweb3.eth.getChainId()

????letnonce=awaitweb3.eth.getTransactionCount(fromAccount.address)

????letgasPrice=awaitweb3.eth.getGasPrice()

????letunsigned={

????????from:fromAccount.address,

????????to,

????????value:web3.utils.numberToHex(web3.utils.toWei(value,'ether')),

????????gasPrice,

????????nonce,

????????chainId,

????}

????unsigned.gas=awaitweb3.eth.estimateGas(unsigned)

????letsigned=awaitfromAccount.signTransaction(unsigned)

????returnsigned

}

合約

Heco使用EVM執行合約。

Remix

RemixIDE是一個開源的web和桌面應用程序。它促進了一個快速的開發周期,并且有一組具有直觀gui的豐富插件。Remix用于合約開發的整個過程,同時也是學習和教授合約開發的小天地。

在文件資源管理器中創建新文件。在右側編輯合約信息。

編譯合約

1.點擊編譯器按鈕,切換界面

2.選擇要編譯的合約

3.設置編譯標志

4.Clieckcompile按鈕

通過錢包將合約部署到區塊鏈。

以太坊網絡當前已銷毀241.8萬枚ETH:金色財經報道,據Ultrasound數據顯示,以太坊網絡當前已銷毀2,418,365.28ETH。其中,OpenSea銷毀230,048.62枚ETH,ETHtransfers銷毀224,249.78枚ETH,UniswapV2銷毀133,382.92枚ETH。注:自以太坊倫敦升級引入EIP-1559后,以太坊網絡會根據交易需求和區塊大小動態調整每筆交易的BaseFee,而這部分的費用將直接燃燒銷毀。[2022/6/8 4:11:00]

1.在MetaMask中設置網絡信息:

2.回到Remix。

開關環境

選擇合約

單擊部署按鈕

通過MetaMask即可將合約部署上鏈了

Truffle

·?使用truffle編譯和部署契約。

·?

·?安裝節點。

·?安裝truffle

npminstall-gtruffle

truffleversion安裝完成后運行。如果命令行顯示如下消息,則說明安裝成功。

Trufflev5.1.36(core:5.1.36)

Solidityv0.5.16(solc-js)

Nodev10.22.1

Web3.jsv1.2.1

·?創建項目

首先,為項目創建文件夾。

mkdirExample

cdExample

然后,通過truffle初始化項目

truffleinit

初始化完成后,將在項目中生成以下文件結構。

|--contracts????????//folderforcontracts

|--migrations???????//folderfordeploymentscripts

|--test?????????????//folderfortestscripts

|--truffle-config.js//truffleconfigfile

·?配置truffle信息

constHDWalletProvider=require(',

????mainnet:{

??????provider:()=>newHDWalletProvider(mnemonic,'https://http-mainnet.hecochain.com'),

??????network_id:128

????}

??},

??//Setdefaultmochaoptionshere,usespecialreportersetc.

??mocha:{

????//timeout:100000

??},

??//Configureyourcompilers

??compilers:{

????solc:{

??????//version:"0.5.1",???//Fetchexactversionfromsolc-bin(default:truffle'sversion)

??????//docker:true,???????//Use"0.5.1"you'veinstalledlocallywithdocker(default:false)

??????//settings:{?????????//SeethesoliditydocsforadviceaboutoptimizationandevmVersion

??????//?optimizer:{

??????//???enabled:false,

??????//???runs:200

??????//?},

??????//?evmVersion:"byzantium"

??????//}

????},

??},

};

·?C創建合同將自定義合同放入文件夾中,contracts并修改文件夾中的部署腳本migrations。

·?部署合約

trufflemigrate--networktestnet

輸出如下.

2_example_migration.js

======================

???Deploying'ExampleToken'

???------------------------

???>transactionhash:???0x91e50594a63bc6f4c299f3f445868571678be306b835bddce6dff5c7a5ddf9dc

???>Blocks:2???????????Seconds:4

???>contractaddress:???0x54D2049715FC8De1361D7350de90eb05F0f6CA84

???>blocknumber:???????375304

???>blocktimestamp:????1608016637

???>account:????????????0x03D32B774295D740ffEe43b20fcC0a53acC576e6

???>balance:????????????878.909609236165318643

???>gasused:???????????1056044(0x101d2c)

???>gasprice:??????????20gwei

???>valuesent:?????????0ETH

???>totalcost:?????????0.02112088ETH

???>Savingmigrationtochain.

???>Savingartifacts

???-------------------------------------

???>Totalcost:?????????0.02112088ETH

Summary

=======

>Totaldeployments:??1

>Finalcost:?????????0.02112088ETH

最后,合約部署完成。

GraphNode

GraphNode是一種使用GraphQL在以太坊和IPFS上快速構建分布式應用程序的協議。

下一個操作僅作為簡單的設置教程供參考。

設置圖節點

為了方便起見,我們將官方dockercompose用于節點,數據庫和IPFS部署。

請注意,其中的ethereum字段的值將docker-compose.yml替換為HECO的節點連接信息。

graph-node:

????image:graphprotocol/graph-node

????ports:

??????-'8000:8000'

??????-'8001:8001'

??????-'8020:8020'

??????-'8030:8030'

??????-'8040:8040'

????depends_on:

??????-ipfs

??????-postgres

????environment:

??????postgres_host:postgres

??????postgres_user:graph-node

??????postgres_pass:let-me-in

??????postgres_db:graph-node

??????ipfs:'ipfs:5001'

??????ethereum:'mainnet:http://127.0.0.1:8545'?#replacedwithhecorpcinfo

??????RUST_LOG:info

注意:連接到graph-node的節點必須處于archive模式,我們建議每個用戶都構建自己的RPC節點。

創建子圖

每個用戶根據自己的情況編寫,以下內容可用作參考:

部署子圖

將編寫的子圖打包并構建到wasm文件中,然后部署到graphnode。可以在上面的示例項目代碼中找到特定的命令。

GraphQL的用法

一旦部署,就可以使用GraphQL請求數據

來源:金色財經

Tags:ETHECOCONAINethw幣最新價格行情HOMIECOINconv幣是哪個國家的EWChain

加密貨幣
進展周報 | 波場TRON進展周報2021.01.30-2021.02.05_ZKS

為滿足波場TRON全球社區愛好者閱讀,本周周報共分為14種語言,請您選擇閱讀。 中文 Chinese? 中文 traditionalchineseSupraOracles宣布在Sui主網上推出預.

1900/1/1 0:00:00
BallSwap (BSP) 首發上線BitMart Shooting Star搶購 搶購成功可獲$5 BSP獎勵_ERA

BallSwap(BSP)?將于2021年2月19日16:00首發上線BitMart“ShootingStar”搶購專區,開啟限時24小時內搶購,搶購總額為50,000USDT.

1900/1/1 0:00:00
NewSwap交易挖礦即將上線主網_EWS

NewSwap交易挖礦將于新加坡時間2021年2月11日8時上線主網,NewPay和NewMask的交易頁面已上線交易挖礦入口.

1900/1/1 0:00:00
蔣福財:2.10黃金為何暴漲、午夜黃金行情最新操作建議_APE

     黃金從盤面上看,4小時級別,K線小實體震蕩整理,布林線拐頭向上運行,所以,整體走勢偏多頭.

1900/1/1 0:00:00
FSAG首日漲幅超183%_Polygon

WBF交易所數據顯示,FSAG首日上漲超183%,突破0.01美元關口,現報價0.0283美元.

1900/1/1 0:00:00
BitPay集成Apple Pay,為其3.8億用戶提供加密支付服務_PLE

隨著BitPay宣布其萬事達預付卡用戶現在可以連接到AppleWallet,用ApplePay支付商品和服務,支持加密功能的主要支付公司仍在繼續推出加密支付服務.

1900/1/1 0:00:00
ads