调用erc20合约的转账方法
solidity编译器的版本选择
1 | 选择solc的指定版本 |
使用go-ethereum的abigen工具生成go源文件
1 | cd /Users/apple/code/open-source/blockchain/ethereum/go-ethereum/cmd/abigen |
报错记录
replacement transaction underpriced
使用相同的nonce再次发起交易时,gasPrice必须大于上次交易gasPrice10%以上。
交易一直是pending状态,无法确认
invalid sender
在调用json rpc接口时,返回以上的错误,原因是因为chainId与实际的chainId不一致。
交易发送出去但是交易状态是失败,点击详情提示:a status code indicating if the top-level call succeeded or failed
其中一个原因可能是abi错误,然后生成的methodId不正确导致,可以在应用页面调用一次这个方法,确认真实的方法和参数。
这是个坑人的问题,合约源码与真实的链上部署的不一致,如solo.top项目的bank合约,deposit提供的源码与页面调用的参数就不一致。