この記事のサンプルで使用している Web3.js のバージョンは 0.20.6 です。 Contract を扱うための ABI を用意 ABI は、スマートコントラクトがどのような関数や状態変数を持っているかといった情報をもったインタフェースです。 Web3.js のプログラムからス…
Ethereum のアドレスが適切(valid)なアドレスかどうかをチェックする方法です。 Web3 1.0.0 を使用します。 サンプルコード const isValidAddress = Web3.utils.isAddress(address); デモ https://piyolab.github.io/playground/ethereum/isValidEthereumA…
Solidity 0.4.21 までのコンストラクタの書き方 Solidity 0.4.21 までは、コントラクトと同じ名前の関数がコンストラクタでした。 ただ、この仕様だと、コントラクト名を変更したときに、コンストラクタだけ変更されずに、意図した初期化処理が行われない可…
MetaMask は複数アカウント(アドレス)を管理できる web3 に MetaMask が inject しているとき、ユーザがアカウントを切り替えたことを検知したいことがある いろいろ方法しらべてみたけど、次のような原始的な方法を使う感じになりそう。 サンプルコード w…
Web3.js の eth.getGasPrice メソッドを使用することで、過去数ブロックの GasPrice の中央値を取得することができる ドキュメント 以下の例は web3 version 0.20.x サンプルコード var web3 = new Web3(new Web3.providers.HttpProvider('https://mainnet.i…
Web3.js 1.0.0 を使用した例です。 Web3.js のインストール $ npm install web3 --save サンプルコード let Web3 = require('Web3'); console.log(Web3.version); // => 1.0.0-beta.34 // UTF8String to HexData let data = Web3.utils.utf8ToHex('piyo'); c…
Ether の日本円価格(レート)を取得する方法です。 coinmarketcap の API を使用します。 Node.js によるサンプルコード let https = require('https'); const url = 'https://api.coinmarketcap.com/v2/ticker/1027/?convert=JPY'; https.get(url, (respon…