playground

The world is a playground.

Web3.js を使用して Ether を送る方法

ウェブサイトに Web3.js を導入して、Ethereum アドレスA から アドレスB に Ether を送る方法のメモです。

 

環境

  • ブラウザ: MetaMask がインストールされているブラウザ
  • MetaMask は file:// だと動かないので、Webサーバを用意
    Mac だと、任意のディレクトリで次のようなコマンドを実行すれば、そのディレクトリをドキュメントルートにしたサーバを立てることができます。次の例の場合、ポートを 8080 に指定しているので、http://localhost:8080 でアクセス可能です。
    $ python -m SimpleHTTPServer 8080
  • web3.js 1.0.0-beta.18

 

Web3.js を導入

  • https://github.com/ethereum/web3.js/releases からダウンロード
  • 今回は、1.0.0-beta.18 をダウンロードしました。
  • ダウンロードしたファイル内の、dist/web3.min.js を HTMLに追加します。

 

トランザクションの実行方法

アドレスA から アドレスB に Ether を送る、というトランザクションを実行します。

トランザクションの実行には web3.eth.sendTransaction(transactionObject [, callback]) を使用します。

  • transactionObjectの内容は次の通り
  • from: トランザクション送付元アドレス
  • to: メッセージ送付先アドレス
  • value: トランザクションで送付する wei の値
  • gas: ガスリミット
  • gasPrice: ガスプライス
  • data: トランザクションの追加データ。コントラクトのメソッドを実行したりするときに使用
  • nonce: トランザクションがまだブロックに取り込まれる前であれば、同じ nonce を指定することで上書き可能

 

トランザクションを実行するコード例

gist.github.com

 

Scrapbox

scrapbox.io