如何读取以太坊交易的数据字段

Posted

技术标签:

【中文标题】如何读取以太坊交易的数据字段【英文标题】:How to read Data field of Ethereum transaction 【发布时间】:2020-11-01 00:01:21 【问题描述】:

我正在尝试使用数据字段在本地以太坊区块链上发布带有消息的交易。 我不知道如何检索消息。

代码:

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'你好'

0x48656c6c6f

我想检索原始消息“Hello”。

【问题讨论】:

【参考方案1】:

您需要知道发布消息的交易哈希。

然后你可以调用web3.eth.getTransaction(hash),然后你可以在input字段中读回数据。

【讨论】:

以上是关于如何读取以太坊交易的数据字段的主要内容,如果未能解决你的问题,请参考以下文章

以太坊/BSC 区块链交易数据

以太坊 交易 data字段 内容是什么

以太坊如何使用web3.js或者rpc接口获取交易数据交易时间与确认数?

以太坊区块和交易存储

源代码:以太坊PHP离线交易开发包

以太坊交易(tx) 分析