以太坊实战50条问答.pdf

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
以太坊技术 50 条问答 1.以太坊区块怎么查看是那个节点开采的。 答:eth.getBlock();有个miner字段,那就矿工地址 2.查看以太坊区块的timestamp为1534142447,转换后时 间为1970/01/1902:09:02,明显时间不对。 答:这个时间是单位是秒,java里的时间单位是毫秒,加三个0 就行了,1534142447000 3.在新建帐户的时候 如果不通过 accounts.create 通过 newAccount()的话,它是返回一个地址,而不是Account对 象,里面没有私钥,请问如何获取这个私钥? 答:私钥是生成在keystore文件下面。 4.web3.js里面,用指定的用户来调用,如何实现签名?难道需 要使用 data来进行调用吗? 答:携带参数 from :即可,creat是本地生成,newAccount 是通过geth节点生成 5.怎么做一个像eth那样的离线签名,在客户端直接生成转账签 名串?或者有什么例子和好的库吗? 答:web3就可以实现的。先生成交易数据字符串,然后对交易 数据签名,然后发送给节点。 6.钱包生成的 keystore是什么时候给回给用户。 答:这是一种中心化生成钱包的方法。用户备份账户的时候,返 回给用户即可。不过这种钱包我是不会用的,因为服务器保存了 我的秘钥,这个严重违背了去中心的思想,也会让用户感觉自己 的账户不安全,被控制着。 7.访问以太坊 kovan 测试链,一台代码一台电脑能获取那个 transactionCount,代码扔到阿里云服务器上就取不到这个数 据了。 答:eth.syncing,还没同步完吧。 8.以太坊合约 (erc721)里边可不可以引用其他代币 (erc20), 判断执行某一个操作有没有向合约 (或者合约创建者)转一定数 量的 erc20 代币。 主要问题是 监听到有没有转账成功,成功 了再去执行一个 function 剩下的逻辑。 答:你可以在 ERC20接口里,写一个只能智能合约调用的转账 方法,然后再 ERC721写一个交易方法,同时完成调用 ERC20 转账功能,和 ERC721交易功能。 9.solidity 中如何引用已经部署在链上的 library? 答:library 就是为了部署一次,多次使用的。去了解一下 DELEGATECALL 的用法。 10.gas required exceeds allowance or always failing transaction 估算 gas 时报这个什么原因。 答:gas不够,提高 gas,交易携带参数 gas 6000000 11.web3 = new Web3(new Wviders.HttpProvid er(http//localhost 7545)); 这个地址怎么填? 答:-rpcaddr -rpcport 8545,ip和端口是你启动 时设置的这两个参数,格式就是你上面的格式。 12. solidity 小数 怎么取整。 答:solidity 里面没有小数啊,只有无符号整数,代币的小数部 分,是用很多 0来凑的,所有有个 256位 int 型。 13.以太坊 erc20交易的转账 to地址一定是这个 token的合约 地址吗?还是可能是其他合约地址? 答:合约中如果有类似这样的方式,functiontransfer(address _to, uint256 _value) public returns (bool success);这个方面 里面的to是接受的地址 调用上面这个方面类似代码如下: JsonRpc.CallArguments ca = new JsonRpc.CallArguments(); ca.from =cowAcct; ca.data = TypeConverter.toJsonHex(CallTransaction.Function.fromSi gnature(method,types).encode(values));ca.to=contractHa sh;//合约地址,这里的to是合约地址,向合约发送数据 (调用 transfer方法)。 14.发送交易,你们的 nonce值,是外部数据库维护一个值吗? 还是 web3j 去获取 pending 的 nonce值? 答:nonce值是在状态树中的,一般不用设置,让其自动设置就 行了。只有在需要取消 pending 的交易的时候,才会指定 nonce 用新的交易替代旧的交易。 (都是未确认的交易)当然你也可以 自己维护,不

文档评论(0)

光伏电站设计技术咨询 + 关注
实名认证
服务提供商

专注于光伏电站的设计及技术服务,在该领域已有8年工作经验。提供更专业的咨询服务以及专业的解决方案,让你的电站投资收益最大化。

1亿VIP精品文档

相关文档