ブロックチェーン上の情報をGETする方法(gethの場合)
ブロックチェーン上の情報をGETする方法(gethの場合):
初投稿です。
今回は、BCからデータを吸い取る方法を載せます。
多分見れば、分かりますw
実行環境として
Gethを使用しています。
ビットコインの場合はまた違うと思います。
ここでweb3でGethと接続する
(web3.eth.getTransactionFromBlock(i) != null)でそのブロックにトランザクションがあるかどうかが分かる。
今回はこれくらいで終わりです。
分かりにくかったらすいません。
何か疑問点があれば、質問などしてくれたら返事します。
はじめに
初投稿です。今回は、BCからデータを吸い取る方法を載せます。
コード
多分見れば、分かりますw実行環境として
Gethを使用しています。
ビットコインの場合はまた違うと思います。
bcCheck.js
var Web3 = require('web3'); var web3 = new Web3(); web3.setProvider(new web3.providers.HttpProvider('http://localhost:8545')); var blockNumber = web3.eth.blockNumber; console.log("blockNumber: " + blockNumber); for(var i = 0;i <blockNumber;i++){ if(web3.eth.getTransactionFromBlock(i) != null){ var getInputSlice = web3.eth.getTransactionFromBlock(i).input.substr(0,10); if(getInputSlice == "0x42f09166"){ var getInput = web3.eth.getTransactionFromBlock(i).input console.log("getInput: " + i + ": " + JSON.stringify(getInput)); } console.log("getInput: " + i + ": " + JSON.stringify(getInputSlice)); } }
コード説明
ここでweb3でGethと接続するvar Web3 = require('web3'); var web3 = new Web3(); web3.setProvider(new web3.providers.HttpProvider('http://localhost:8545'));
トランザクションがないブロックにはinputがないため
ここで、(web3.eth.getTransactionFromBlock(i).input != null)と書くと、エラーが出る。
for(var i = 0;i <blockNumber;i++){ if(web3.eth.getTransactionFromBlock(i) != null){ var getInputSlice = web3.eth.getTransactionFromBlock(i).input.substr(0,10); if(getInputSlice == "0x42f09166"){ var getInput = web3.eth.getTransactionFromBlock(i).input console.log("getInput: " + i + ": " + JSON.stringify(getInput)); } console.log("getInput: " + i + ": " + JSON.stringify(getInputSlice)); } }
終わり
今回はこれくらいで終わりです。分かりにくかったらすいません。
何か疑問点があれば、質問などしてくれたら返事します。
コメント
コメントを投稿