使用 w3.eth.contract() 部署智能合约时出错:"The method eth_sendTransaction is not supported"



我使用的是Web3.py和一个许可的Hyperledger Besu网络。

当尝试使用w3.eth.contact(…(方法将智能合约部署到网络中时,我得到了以下错误:

ValueError: {'code': -32604, 'message': 'The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu.'}

我想在执行w3.eth.contact(…(时调用了eth_sendTransaction。有没有其他方法可以部署合约而不会出现这个问题?

您需要在发送前对交易进行签名,更多详细信息:https://web3py.readthedocs.io/en/stable/web3.eth.account.html#sign-a交易

您可能使用Infura节点或类似节点。

您需要使用Web3.py在本地签署交易,并让您的应用程序为您管理私钥。

相关内容

  • 没有找到相关文章

最新更新