在以太坊(ETH)和火币生态链(HECO)上,可以通过交易哈希(Transaction Hash/TxHash)查询交易的详细数据。以下是具体方法: 1. 通过区块链浏览器查询以太坊(ETH)火币生态链(HECO) 2. 通过节点 API 查询如果不想依赖区块链浏览器,可以通过节点的 JSON-RPC API 直接查询交易数据。 以太坊(ETH)使用 eth_getTransactionByHash 方法: bash
curl -X POST \ -H "Content-Type: application/json" \ --data '{"jsonrpc":"2.0","method":"eth_getTransactionByHash","params":["0x交易哈希"],"id":1}' \ https://mainnet.infura.io/v3/YOUR_INFURA_API_KEY
返回结果包含交易的完整字段(如 from, to, value, input 等)。 火币生态链(HECO)HECO 兼容以太坊的 API,使用方法相同(需替换节点 URL): bash
curl -X POST \ -H "Content-Type: application/json" \ --data '{"jsonrpc":"2.0","method":"eth_getTransactionByHash","params":["0x交易哈希"],"id":1}' \ https://http-mainnet.hecochain.com
3. 通过开发库查询(Web3.js/Ethers.js)以 Ethers.js 为例: javascript
const { ethers } = require("ethers");// 连接节点(以 Infura 为例)const provider = new ethers.providers.JsonRpcProvider("YOUR_RPC_URL");async function getTransaction(txHash) { const tx = await provider.getTransaction(txHash); console.log(tx);}getTransaction("0x交易哈希");
4. 通过智能合约事件(如需更复杂数据)如果是智能合约交易,可能包含事件日志(Event Logs),可通过 eth_getTransactionReceipt 查询: javascript
const receipt = await provider.getTransactionReceipt(txHash);console.log(receipt.logs); // 解码事件日志
注意事项交易哈希唯一性:每个交易哈希仅在对应链上有效(ETH 的哈希在 HECO 上查不到)。 未确认交易:如果交易未被打包,可能暂时查询不到(可通过内存池接口查询 pending 交易)。 隐私交易:某些交易(如 Tornado Cash)的输入数据可能是加密的。
通过以上方法,你可以轻松获取任意交易哈希对应的详细数据。
|