Как читать поле данных Ethereum транзакции - PullRequest
1 голос
/ 11 июля 2020

Я пытаюсь опубликовать транзакцию с сообщением в локальной цепочке блоков ethereum, используя поле данных. Я не знаю, как получить сообщение.

код:

import web3
w3 = web3.Web3(web3.HTTPProvider("http://127.0.0.1:7545"))
alice = w3.eth.accounts[0]
text = b'Hello'
print(text)
tx = {
    'from': alice,
    'to': alice,
    'data': text,
}
tx_hash = w3.eth.sendTransaction(tx)
tx_receipt = w3.eth.waitForTransactionReceipt(tx_hash)
my_tx = w3.eth.getTransaction(tx_hash)
print(my_tx.input)

вывод:

b'Hello '

0x48656c6c6f

Я хочу получить исходное сообщение «Привет».

1 Ответ

0 голосов
/ 14 июля 2020

Вам необходимо знать транзакцию ha sh, где было опубликовано сообщение.

Затем вы можете позвонить web3.eth.getTransaction(hash) и прочитать данные обратно в поле input.

...