web3.py中sendTransaction和sendRawTransaction之间的区别

时间:2018-06-22 10:19:09

标签: ethereum web3

这两种web3.py发送交易方法的实际区别是什么?

  • w3.eth.sendTransaction({})
  • w3.eth.sendRawTransaction(signed_txn.rawTransaction)

1 个答案:

答案 0 :(得分:2)

w3.eth.sendTransaction()仅支持发送 unsigned 交易。为了使用它,您的node must be managing your private key。由于节点必须管理您的密钥,因此您不能将其与hosted node一起使用。

w3.eth.sendRawTransaction()要求该交易已经签名并序列化。因此,它需要使用额外的序列化步骤,但使您能够在托管节点上广播事务。当然,还有其他原因可能需要使用local key。所有这些都需要使用sendRawTransaction()