连接到Testnet Rinkeby:
$ geth --rinkeby --syncmode快速控制台
尝试通过以下方式检索交易数据:
eth.getTransaction(eth.getBlock(183000).transactions [0])
我收到以下错误消息:
错误:无效参数0:json:无法将非字符串编组为Go值
类型为common.hash
在web3.js:3143:20
在web3.js:6347:15
在web3.js:5081:36
at:1:1
我尝试更改块号,但遇到相同的错误。 我试图退出控制台并重新启动,但遇到了同样的错误。
答案 0 :(得分:0)
同一问题
eth.getTransaction(eth.getBlock("latest").transactions[1])
:'(
也许是因为残废是0!
答案 1 :(得分:0)
解决了!
在块n中。 183000没有交易:
eth.getBlock(183000)
{
difficulty: 2,
extraData: "0xd783010600846765746887676f312e372e33856c696e75780000000000000000a2111cb9859380205306730539ac8c77dec1d0aa9aa9743a0773c731d300a19f1acad2c7ceb41ee3e603c636fc805c8b7f12a370136ed94bd84b03d3430aca6601",
gasLimit: 4712388,
gasUsed: 0,
hash: "0xd793c4be0804f87d21d42c694e762c6cb6277ef1fcdbf20f67970f5f82e0d16b",
logsBloom: "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
miner: "0x0000000000000000000000000000000000000000",
mixHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
nonce: "0x0000000000000000",
number: 183000,
parentHash: "0x2233532f7554029162c085888efd944009dd0fc86bdb97314dc0c1c2d37f58cf",
receiptsRoot: "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
sha3Uncles: "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
size: 609,
stateRoot: "0x8425418849819297a2f8f8391f16445928a42f415362bd17cf9282e8bbff8093",
timestamp: 1494755487,
totalDifficulty: 357271,
transactions: [],
transactionsRoot: "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
uncles: []
}
我在第n座发现了交易。 188880。
此外,我正在等待Testnet Rinkeby的完全同步,以检查块n。 1830000。
尝试更改区块号并检查其中是否有交易。
eth.getTransaction(eth.getBlock(188880).transactions [0])
应该工作;)
答案 2 :(得分:0)
太棒了!谢谢naszam :) 它也与我一起在299394区块