在交易中指定链ID:EIP-155
RawTransactionManager
采用一个可选的链表参数来指定在EIP-155上使用的链ID。这防止了一个链被重新广播到另一个链上的交易,例如从Ropsten
到Mainnet
:
TransactionManager transactionManager = new RawTransactionManager(
web3j, credentials, ChainId.MAIN_NET);
为了避免更改配置或代码来指定你正在使用的链,web3j默认是不指定交易上的链ID,以简化与库间的交互。然而,以太坊社区的建议是使用链ID。
你可以通过以下请求获得你的以太坊客户端连接到的网络的链ID:
web3j.netVersion().send().getNetVersion();