Разница между sendTransaction и sendRawTransaction в web3.py
Каковы практические различия между этими методами web3.py для отправки транзакции?
w3.eth.sendTransaction({})
w3.eth.sendRawTransaction(signed_txn.rawTransaction)
1 ответ
Решение
w3.eth.sendTransaction()
поддерживает только отправку неподписанных транзакций. Чтобы использовать его, ваш узел должен управлять вашим закрытым ключом. Поскольку узел должен управлять вашим ключом, вы не должны использовать его с размещенным узлом.
w3.eth.sendRawTransaction()
требует, чтобы транзакция была уже подписана и сериализована. Поэтому он требует дополнительных шагов сериализации для использования, но позволяет транслировать транзакции на размещенных узлах. Конечно, есть и другие причины, по которым вы можете использовать локальный ключ. Все они потребуют использования sendRawTransaction()
,