【问题标题】:Difference between sendTransaction and sendRawTransaction in web3.pyweb3.py 中 sendTransaction 和 sendRawTransaction 的区别
【发布时间】:2018-12-01 19:19:38
【问题描述】:

这些用于发送交易的 web3.py 方法之间的实际区别是什么?

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

【问题讨论】:

    标签: ethereum web3


    【解决方案1】:

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

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

    【讨论】:

    • 我是否需要解锁我的帐户才能使用 sendRawTransaction()?我目前正在尝试与智能合约进行交易并正在签署交易,然后单独发送原始交易..
    • @walksignison 不,解锁帐户是您使用托管密钥执行的操作,sendRawTransaction() 与本地密钥一起使用。如果您在 stackoverflow 上找不到问题,可能在 ethereum.stackexchange.com
    猜你喜欢
    • 2018-12-01
    • 2022-08-18
    • 2021-11-30
    • 2022-01-15
    • 2018-08-18
    • 2018-10-09
    • 1970-01-01
    • 2022-07-08
    • 2019-09-13
    相关资源
    最近更新 更多