Ethereum实战细节问题总结

一、struct ConfirmOrder中定义一个mapping(uint=>ConfirmDetail) confirmDetails,则创建ConfirmOrder时,confirmDetails可以不赋值。如果使用ConfirmDetail[] confirmDetails时,创建ConfirmOrder时,不赋值,则报错:TypeError: Wrong argument count for struct constructor: 5 arguments given but expected 6.

二、function AddConfirmDetails(uint _orderId,string _state) public view returns(uint amount){,这样写无法显示这个方法。function AddConfirmDetails(uint _orderId,string _state) public{,这样写就能显示这个方法。

三、public view returns,加view时,就无法插入,不加view能插入但无法返回值

四、查询geth版本

$ geth version

Geth

Version: 1.8.3-stable

Architecture: amd64

Protocol Versions: [63 62]

Network Id: 1

Go Version: go1.10.1

Operating System: darwin

GOPATH=

GOROOT=/usr/local/opt/go/libexec

五、查询go版本

$ go version

go version go1.10.1 darwin/amd64

六、区块链命令

txpool.status

miner.start(1);admin.sleepBlocks(5);miner.stop();

eth.getBlock(33)

web3.fromWei(eth.getBalance(eth.accounts[0]),'ether')

admin.peers

$ geth --testnet --fast console 2>> geth-test.log 测试网络

$ geth --fast console 2>> geth-test.log 主网络

> eth.syncing 查询同步进度

遇到问题:synchronisation failed retrying block download canceled使用下面两句话后继续执行上面的语句同步节点

$ geth removedb

$ geth upgradedb

七、多节点私有链启动命令必须一致,否则一个节点提交区块,其他节点无法挖矿处理此区块。

比如

$ geth --identity "itari" --datadir data0 --networkid 899 --port 30303 --rpc --rpcaddr localhost --rpcport 8545 --rpcapi "db,web3,eth,personal,miner,net,txpool" --rpccorsdomain "*" console 2>> data.log

$ geth --identity "itari" --datadir data0 --networkid 899 --port 30303 --rpc --rpcaddr localhost --rpcport 8545 console

两种不同的启动方式

转载于:https://my.oschina.net/duojin/blog/1822387

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值