eth_getTransactionByHash
トランザクションハッシュに基づき、トランザクションについての情報を返します。
パラメータ
1. DATA
32バイト
トランザクションハッシュ
code:params.js
params: [
"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b"
]
戻り値
Object - トランザクションオブジェクト。トランザクションがみつからなかった場合は null
blockHash : DATA
32バイト
トランザクションが取り込まれたブロックのハッシュ
未承認トランザクションの場合は null
blockNumber : QUANTITY
トランザクションが取り込まれたブロックの番号
未承認トランザクションの場合は null
from : DATA
20バイト
送信者のアドレス
gas : QUANTITY
送信者によって供給されたガス
gasPrice : QUANTITY
送信者によって指定されたガス価格(単位は Wei)
hash : DATA
32バイト
トランザクションハッシュ
input : DATA
トランザクションとともに送信されたデータ
nonce : QUANTITY
このトランザクションの前に送信者によって実行されたトランザクションの数
to : DATA
20バイト
受信者のアドレス
コントラクト作成トランザクションの場合は null
transactionIndex : QUANTITY
ブロック内のトランザクションのインデックス位置
未承認トランザクションの場合は null
value : QUANTITY
送信された値
= Ether
単位は Wei
v : QUANTITY
ECDSA リカバリ ID(V)
r : DATA
32バイト
ECDSA 署名 R
s : DATA
32バイト
ECDSA 署名 S
サンプル
code:example.sh
// Request
// Result
{
"jsonrpc":"2.0",
"id":1,
"result":{
"blockHash":"0x1d59ff54b1eb26b013ce3cb5fc9dab3705b415a67127a003c3e61eb445bb8df2",
"blockNumber":"0x5daf3b", // 6139707
"from":"0xa7d9ddbe1f17865597fbd27ec712455208b6b76d",
"gas":"0xc350", // 50000
"gasPrice":"0x4a817c800", // 20000000000
"hash":"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b",
"input":"0x68656c6c6f21",
"nonce":"0x15", // 21
"to":"0xf02c1c8e6114b1dbe8937a39260b5b0a374432bb",
"transactionIndex":"0x41", // 65
"value":"0xf3dbb76162000", // 4290000000000000
"v":"0x25", // 37
"r":"0x1b5e176d927f8e9ab405058b2d2457392da3e20f328b16ddabcebc33eaac5fea",
"s":"0x4ba69724e8f69de52f0125ad8b3c5c2cef33019bac3249e2c0a2192766d1721c"
}
}
Infura を使用したサンプル
GET
code:infura_example_get.sh
POST
code:infura_example_post.sh
curl -i -X POST \
-H "Content-Type: application/json" \
RESPONSE
code:infura_response.sh
{"jsonrpc":"2.0","id":1,"result":{"blockHash":"0x1d59ff54b1eb26b013ce3cb5fc9dab3705b415a67127a003c3e61eb445bb8df2","blockNumber":"0x5daf3b","from":"0xa7d9ddbe1f17865597fbd27ec712455208b6b76d","gas":"0xc350","gasPrice":"0x4a817c800","hash":"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b","input":"0x68656c6c6f21","nonce":"0x15","to":"0xf02c1c8e6114b1dbe8937a39260b5b0a374432bb","transactionIndex":"0x41","value":"0xf3dbb76162000","v":"0x25","r":"0x1b5e176d927f8e9ab405058b2d2457392da3e20f328b16ddabcebc33eaac5fea","s":"0x4ba69724e8f69de52f0125ad8b3c5c2cef33019bac3249e2c0a2192766d1721c"}}
動作サンプル
code:demo.js
let html = '<div><h1>eth_getTransactionByHash</h1></div>'
+ '<div>'
+ '<div>transaction hash: <input type="text" id="input" size="60"></input></div>'
+ '<button onclick="run()">実行</button>'
+ '</div>'
+ '<div><textarea id="result" cols="100" rows="30" readonly></textarea></div>'
$(document.body).append(html)
function run() {
let input = $('#input').val()
if (input.length == 66) {
.then((response) => {
console.log(response)
$('#result').html(JSON.stringify(response, null, '\t'))
})
}
}
参考
関連