摘要:用公开 JSON-RPC 调 eth_getTransactionByHash / eth_getTransactionReceipt,对照浏览器核对一笔主网交易字段。只读,无脚手架。

站内已有 交易回执字段、viem PublicClient、eth_getLogs 与 全节点 vs 轻客户端。本篇换角度:不打开脚手架、不写库封装,直接用公开 JSON-RPC 调 eth_getTransactionByHash / eth_getTransactionReceipt,把一笔主网交易的字段和浏览器对一遍。全程只读,无私钥、不发交易。

一、官方文档:eth_getTransactionByHash 返回什么

打开 ethereum.org 的 JSON-RPC API 页,定位到 eth_getTransactionByHash。文档写明:按交易哈希返回交易对象;找不到时为 null。参数是 32 字节哈希。返回对象常见字段包括 blockHash / blockNumber(未上链时为 null)、from、to、gas、gasPrice、hash、input、nonce 等。本场样例是 EIP-1559 类型(type=2),还会看到 maxFeePerGas / maxPriorityFeePerGas。

区块浏览器之外:怎么用公开 RPC 自己 eth_getTransaction-程序旅途
图1:ethereum.org/en/developers/docs/apis/json-rpc:eth_getTransactionByHash 参数与 Returns 字段;界面英文,2026-10-19 实拍

二、官方文档:eth_getTransactionReceipt 差在哪

同一文档页的 eth_getTransactionReceipt:按哈希返回回执;pending 交易没有回执。回执侧重执行结果:status(1 成功 / 0 失败)、gasUsed、cumulativeGasUsed、effectiveGasPrice、logs 等。和「交易对象」分工:交易对象偏「发了什么」;回执偏「执行成没成、烧了多少 Gas、有哪些日志」。细读日志见站内 回执 Logs 文;过滤器见 eth_getLogs。

区块浏览器之外:怎么用公开 RPC 自己 eth_getTransaction-程序旅途
图2:同一 JSON-RPC 页:eth_getTransactionReceipt;Note:pending 无回执;Returns 含 status / gasUsed / logs 等;界面英文,2026-10-19 实拍

三、对照浏览器:同一笔哈希

本场只读样例(数值会变,以你查询时为准):

0x3b00fd19b7886625129a3ff5911421d5813b788dbb4471025521110ab013022b

在 Etherscan 打开后可见:Status Success、Block 26224058、From / To、Value 0 ETH、Logs 页签显示 7 条等。浏览器把十六进制译成人话;RPC 返回的是原始字段——两边应对齐哈希、区块号、from/to、成功状态。

区块浏览器之外:怎么用公开 RPC 自己 eth_getTransaction-程序旅途
图3:etherscan.io/tx/…3b00fd19…:Success、Block 26224058、From/To、ERC-20 转移摘要;界面英文,2026-10-19 实拍

四、本机:公开 RPC 真实 curl

RPC 使用公开节点 https://ethereum.publicnode.com(也可用 1rpc 等;延迟与限流因节点而异)。本场 2026-10-19 Asia/Shanghai 只读结果摘要:

  • eth_getTransactionByHash:blockNumber=26224058,type=2,nonce=156885,gas limit=440774,value=0,input 长度约 1482 hex 字符。
  • eth_getTransactionReceipt:status=1,gasUsed=234712,effectiveGasPrice≈37756418 wei,logs_count=7。

对照:浏览器 Success ↔ status 1;Gas Used 应对齐 gasUsed;Logs(7) ↔ logs_count。库封装路线见 viem PublicClient;本篇刻意停在裸 RPC。

区块浏览器之外:怎么用公开 RPC 自己 eth_getTransaction-程序旅途
图4:本机 curl ethereum.publicnode.com:eth_getTransactionByHash / eth_getTransactionReceipt 精选字段;只读;2026-10-19 Asia/Shanghai

五、字段怎么对照(卡片)

你想确认的事 优先看哪个 RPC 浏览器大致对应
上没上链、在哪一块 交易对象的 blockNumber / blockHash Block / 确认数
谁发给谁、带了多少 ETH from / to / value From / To / Value
成没成、烧了多少 Gas 回执 status / gasUsed / effectiveGasPrice Status / Gas Used / Gas Price
合约事件有几条 回执 logs(或另调 eth_getLogs) Logs 页签
浏览器是翻译层
UI 把 hex 译成十进制/标签;自己调 RPC 时记得 QUANTITY 是 hex。
公开 RPC 只读即可
查交易不需要私钥。写入、签名走钱包;切勿把助记词贴进终端。
和 MEV / 保护无关
本篇只核对字段。三明治与 Flashbots Protect 见站内 MEV / Flashbots Protect。
  1. 在浏览器复制一笔已确认交易的哈希。
  2. 对公开 RPC 调 eth_getTransactionByHash,记下 blockNumber / from / to / type。
  3. 再调 eth_getTransactionReceipt,核 status、gasUsed、logs 条数。
  4. 打开同一哈希的浏览器页,逐项对照。
  5. 需要钱包读链可试用欧易 Web3(创建可填 CHENGXULVTU);买少量 ETH 付 Gas 可在 币安 或 欧易——本场不需要。

相关阅读

说明:配图为 2026-10-19 ethereum.org JSON-RPC 文档(getTransactionByHash / Receipt)、Etherscan 样例交易、本机对 ethereum.publicnode.com 的真实 curl 精选字段。样例哈希、块高、Gas、日志数会变。本文不构成投资建议。