Wie frage ich die lokale Ethereum-Blockchain nach einer bestimmten Transaktion ab?

Ich möchte eine bestimmte Transaktion finden. Wie kann ich meine lokale Ethereum-Blockchain von der Konsole aus abfragen?

Antworten (2)

Transaktion nach Transaktions-Hash suchen

Idealerweise hätten Sie den Transaktions-Hash gespeichert und können dann mit diesem Transaktions-Hash nach der Transaktion fragen. Hier ist ein Beispiel:

> eth.sendTransaction({from: eth.accounts[0], to: eth.accounts[1], value: web3.toWei(1.23456, "ether")})
"0x4a950bc3651c991aa2ff50fc49601e69960f1f75823df3d4a5dfc7d3c5e3c190"

Verwenden Sie eth.getTransaction(txHash), um die Transaktionsdetails abzurufen. Die Transaktion wurde noch nicht in einen Block geschürft:

> eth.getTransaction("0x4a950bc3651c991aa2ff50fc49601e69960f1f75823df3d4a5dfc7d3c5e3c190")
{
  blockHash: null,
  blockNumber: null,
  from: "0xa485ab3ad17cd9aca6fd5343a53a513685c7e0ed",
  gas: 90000,
  gasPrice: 20000000000,
  hash: "0x4a950bc3651c991aa2ff50fc49601e69960f1f75823df3d4a5dfc7d3c5e3c190",
  input: "0x",
  nonce: 201,
  to: "0xcf358622d70f62f212aef64e7e26e4746dc84eb3",
  transactionIndex: null,
  value: 1234560000000000000
}

Die Transaktion wurde gerade geschürft:

I0430 21:20:39.493822   14719 worker.go:569] commit new work on block 10543 with 1 txs & 0 uncles. Took 1.257998ms

> eth.getTransaction("0x4a950bc3651c991aa2ff50fc49601e69960f1f75823df3d4a5dfc7d3c5e3c190")
{
  blockHash: "0xeb71b38f6301c570a46d864a0159ddd2b352dec8409a64f210778d8826e4fda0",
  blockNumber: 10543,
  from: "0xa485ab3ad17cd9aca6fd5343a53a513685c7e0ed",
  gas: 90000,
  gasPrice: 20000000000,
  hash: "0x4a950bc3651c991aa2ff50fc49601e69960f1f75823df3d4a5dfc7d3c5e3c190",
  input: "0x",
  nonce: 201,
  to: "0xcf358622d70f62f212aef64e7e26e4746dc84eb3",
  transactionIndex: 0,
  value: 1234560000000000000
}


Finden Sie eine Transaktion mithilfe eines Skripts, um nach einer Transaktion zum/vom Konto zu suchen

Andernfalls siehe die Antwort Script To Find Transactions To/From An Account auf die Frage Häufige nützliche JavaScript-Snippets für Geth für ein Skript zum Durchsuchen der Blockchain nach Ihrer Transaktion.

Um Details zu einer Transaktion zu erhalten, benötigen Sie einen Transaktions-Hash

var tx = {from: eth.coinbase, to:eth.accounts[1], value: web3.toWei(10, "ether")}
> personal.sendTransaction(tx,"your_passphrase")

Nachdem Sie dies ausgeführt haben, erhalten Sie den Transaktionshash

"0x575021e07c382ff4af7deaa884bc1e32c21a1e1a537530495460fb5f6bb295a6"

Mit diesem Transaktions-Hash erhalten Sie die Transaktionsdetails, die drei Arten haben können

  1. Transaktionsbeleg

  2. Transaktion

  3. Block

1. Um eine Transaktionsquittung zu erhalten

> eth.getTransactionReceipt("0x575021e07c382ff4af7deaa884bc1e32c21a1e1a537530495460fb5f6bb295a6");
{
  blockHash: "0x1e19da77340a213e740b586d946babf8e71e04c96f688a563f329e7c37e7a383",
  blockNumber: 73003,
  contractAddress: null,
  cumulativeGasUsed: 21000,
  from: "0xf0606aab9ed3f89a4167b43ce4eed4ff8f4cc195",
  gasUsed: 21000,
  logs: [],
  logsBloom: "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000",
  root: "0x32668b7edc01f7fcd555dec72ee316fe0233ba61a09216bdd016d981ebd9b165",
  to: "0x431bd477b572bb085d55a6f81f49f682a8ffcfbc",
  transactionHash: "0x575021e07c382ff4af7deaa884bc1e32c21a1e1a537530495460fb5f6bb295a6",
  transactionIndex: 0
}
  1. Transaktion zu erhalten

eth.getTransaction("0x575021e07c382ff4af7deaa884bc1e32c21a1e1a537530495460fb5f6bb295a6")

{
  blockHash: "0x1e19da77340a213e740b586d946babf8e71e04c96f688a563f329e7c37e7a383",
  blockNumber: 73003,
  from: "0xf0606aab9ed3f89a4167b43ce4eed4ff8f4cc195",
  gas: 90000,
  gasPrice: 20000000000,
  hash: "0x575021e07c382ff4af7deaa884bc1e32c21a1e1a537530495460fb5f6bb295a6",
  input: "0x",
  nonce: 371,
  r: "0x89012f754609ddd92af62d886c384b89f3b01d56c3119f54ee21ffa4bbd6c6f3",
  s: "0x5d71aa0300f36dfc44dff4711b04a5687e905561cf0a1fcf254057141291dc86",
  to: "0x431bd477b572bb085d55a6f81f49f682a8ffcfbc",
  transactionIndex: 0,
  v: "0x1344248",
  value: 10000000000000000000
}
  1. Um den Block zu erhalten, der diese Transaktion enthält, müssen Sie die Blocknummer verwenden, die in den beiden obigen Transaktionsdetails zu finden ist

eth.getBlock(17003)

{
  difficulty: 3187411,
  extraData: "0xd783010600846765746887676f312e382e31856c696e7578",
  gasLimit: 4712388,
  gasUsed: 56044,
  hash: "0xe4920d566712ddadef12a06758616c07337eb608529791fb65e6bdd1a84899ee",
  logsBloom: "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000",
  miner: "0xf0606aab9ed3f89a4167b43ce4eed4ff8f4cc195",
  mixHash: "0x1ed2e2f5f8c92d0571ef1cd1a7311a5829733d6ad394c64b366cc528fcc6b4ce",
  nonce: "0x30eef6803d21695c",
  number: 17003,
  parentHash: "0x0cfb767909ad8a36d75a35e83473b51b57aea33dd7a1ff6d32ca1e893c2094d3",
  receiptsRoot: "0x0447badab863852e4414f5dc453ea3c8959472478d1627948e93b4b39e6f7890",
  sha3Uncles: "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347",
  size: 716,
  stateRoot: "0xebeecad538dd160db0038cd877b7ab5cdd79328ceb9543e34d8afa6be964f890",
  timestamp: 1494401773,
  totalDifficulty: 36988653229,
  transactions: ["0xb25c31b1dbbbbdc445c2114f37c34b0b3cd87759b24f019026bf7a0832395065"],
  transactionsRoot: "0x6ae8386d4642ec302e0943b58e9e6cc4a03af4bbb288a064cc63d2b00ef2433a",
  uncles: []
}

Sie können alle 3 von Javascript verwenden, indem Sie web3 verwenden

  1. web3.eth.getTransactionReceipt("Transaktions-Hash")
  2. Web3.eth.getTransaction (Transaktions-Hash)
  3. web3,eth.getBlock(Blocknummer/Blockhash)