About Cosense
Help
Log in
🍣sushiether🍣
w
e
b
3
.
j
s
@
0
.
2
x
.
x
Related
Sort by
Related
Modified
Created
Last visited
Most linked
Page rank
Title
Links
ALIS トークンのトランザクション履歴を取得
[ALIS CEO の安さんの記事 https://alis.to/AB2/articles/KJNkB6BA8kqx] をみて、[ERC20] トークンのトランザクション履歴が取得できないか検討してみた。CEO 自ら実装レベルで Ethereum を理解しようとしているのすごい!ERC20 トークンの場合、トークンの転送時に `Transfer` というイベントが index つきで記録されるので、それを利用できないか?
web3.js@0.2x.x web3.eth.blockNumber
`web3.eth.blockNumber`現在のブロック番号を返します。読み取り専用プロパティです。非同期コード`web3.eth.getBlockNumber(callback(error, result){ ... })`
web3.js@0.2x.x Contract Methods
`contractInstance.myMethod(param1 [, param2, ...] [, transactionObject] [, defaultBlock] [, callback])``contractInstance.myMethod.call(param1 [, param2, ...] [, transactionObject] [, defaultBlock] [, callback])`
web3.js@0.2x.x 逆引きリファレンス
[web3.js@0.2x.x web3.jsのバージョンを取得する][web3.js@0.2x.x ノードのバージョンを取得する][web3.js@0.2x.x Ethereumのプロトコルバージョンを取得する][web3.js@0.2x.x Ethereumのノードに接続しているかどうかを確認する][web3.js@0.2x.x web3プロバイダをセットする]
web3.js@0.2x.x Contract Events
`var event = myContractInstance.MyEvent(filterObject [, additionalFilterObject])`コントラクトのイベントを監視します。イベントはフィルタのように使用することができます。イベントはフィルタと同様のメソッドを持ちます。パラメータ
web3.js@0.2x.x スマートコントラクトを初期化する
`let contract = web3.eth.contract(CONTRACT_ABI).at(CONTRACT_ADDRESS)`スマートコントラクト(にアクセスするためのオブジェクト)の初期化には、[ABI] と [コントラクトアドレス] が必要です。ここで行うのはスマートコントラクト自体の初期化ではなく、web3 からスマートコントラクトにアクセスするためのオブジェクトの初期化を行います。
web3.js@0.2x.x web3.version.network
`web3.version.network`ネットワークプロトコルのバージョンを返します。非同期の場合は、次のように記述します。`web3.version.getNetwork(callback(error, result){ ... })`戻り値
MetaMask のアカウント(アドレス)切り替えを検知
[MetaMask] は複数アカウント(アドレス)を管理できる[web3] に MetaMask が inject しているとき、ユーザがアカウントを切り替えたことを検知したいことがあるいろいろ方法しらべてみたけど、次のような原始的な方法を使う感じになりそう。サンプルコードデモ
Web3.js を使って ERC20 トークンを送信
この記事のサンプルで使用している Web3.js のバージョンは `0.20.6` です。スマートコントラクトを扱うための ABI を用意ABI は、スマートコントラクトがどのような関数や状態変数を持っているかといった情報をもったインタフェースです。プログラムからスマートコントラクトを扱う際は、このABIの情報に基づいて関数を読んだり状態変数の値を読みます。通常、ABI にはあるスマートコントラクトが持っているすべての関数や状態変数の情報が記載されますが、ERC20 トークンを送信するには、transfer という関数を実行できればいいので、この記事では transfer のみを ABI に記載します。
Web3.js で ERC20 トークンの残高を取得
この記事のサンプルで使用している Web3.js のバージョンは 0.20.6 です。Contract を扱うための ABI を用意[ABI] は、スマートコントラクトがどのような関数や状態変数を持っているかといった情報をもったインタフェースです。[Web3.js] のプログラムからスマートコントラクトを扱う際は、このABIの情報に基づいて関数を読んだりや状態変数の値を読みます。通常、ABI にはあるスマートコントラクトが持っているすべての関数や状態変数の情報が記載されますが、ERC20 トークンの残高を取得するには、getBalance という関数と decimals という状態変数の値を読むことができればいいので、この記事ではその2つのみを ABI に記載します。
web3.js@0.2x.x web3.eth.iban.toString
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibantostring#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.address
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanaddress#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.client
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanclient#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.institution
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibaninstitution#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.checksum
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanchecksum#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.isIndirect
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanisindirect#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.isDirect
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanisdirect#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.isValid
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanisvalid#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.createIndirect
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibancreateindirect#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.fromBban
参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanfrombban#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.iban.fromAddress
`var i = web3.eth.iban.fromAddress('0x00c5496aee77c1ba1f0854206a26dda82a81d6d8');``console.log(i.toString()); // 'XE7338O073KYGTWWZN0F2WZ0R8PX5ZPPZS`参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethibanfromaddress
web3.js@0.2x.x web3.eth.iban
`var i = new web3.eth.iban("XE81ETHXREGGAVOFYORK");`参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethiban#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.sendIBANTransaction
`var txHash = web3.eth.sendIBANTransaction('0x00c5496aee77c1ba1f0854206a26dda82a81d6d8', 'XE81ETHXREGGAVOFYORK', 0x100);`ユーザアカウントから IBAN アドレスに IBAN トランザクションを送信します。パラメータ`String`トランザクション送信元のアドレス
web3.js@0.2x.x web3.db.getHex
`web3.db.getHex(db, key)`ローカルの leveldb データベースからHEXフォーマットのバイナリデータを取得する際に使用します。パラメータ1. `String`データを取得するデータベース名
web3.js@0.2x.x web3.db.putHex
`web3.db.putHex(db, key, value)`ローカルの leveldb データベースにHEXフォーマットでバイナリデータを保存する際に使用します。パラメータ1. `String`データを保存するデータベース名
web3.js@0.2x.x web3.db.getString
`web3.db.getString(db, key)`ローカルの leveldb データベースから文字列を取得する際に使用します。パラメータ1. `String`データを取得するデータベース名
web3.js@0.2x.x web3.db.putString
`web3.db.putString(db, key, value)`ローカルの leveldb データベースに文字列を保存する際に使用します。パラメータ1. `String`データを保存するデータベース名
web3.js@0.2x.x web3.eth.namereg
`web3.eth.namereg`GlobalRegistrar オブジェクトを返します。#todoGlobalRegistrar について調べる参考
web3.js@0.2x.x Contract allEvents
`var events = myContractInstance.allEvents([additionalFilterObject])`コントラクトによって作成されたすべてのイベントを監視します。パラメータ1. `Object`追加のフィルタオプション
web3.js@0.2x.x web3.eth.contract
`web3.eth.contract(abiArray)`Solidity コントラクトのためのコントラクトオブジェクトを作成します。パラメータ1. `Array`コントラクトのイベント及び関数を伴うABI 配列
web3.js@0.2x.x web3.eth.filter
`web3.eth.filter(filterString [, callback])``web3.eth.filter(filterObject [, callback])`ログを監視します。使用方法パラメータ
web3.js@0.2x.x web3.eth.estimateGas
`web3.eth.estimateGas(callObject [, callback])`メッセージコールまたはトランザクションを実行し、使用したガスを返します。これは、ノードの VM 上で直接実行されますが、ブロックチェーンに取り込まれることはありません。パラメータ1. `Object`
web3.js@0.2x.x web3.eth.call
`web3.eth.call(callObject [, defaultBlock] [, callback])`メッセージコールのトランザクションを実行します。これは、ノードの VM 上で直接実行されますが、ブロックチェーンに取り込まれることはありません。パラメータ1. `Object`
web3.js@0.2x.x web3.eth.sign
`web3.eth.sign(dataToSign, address, [, callback])`指定アカウントでデータに署名を行います。アカウントはアンロックされている必要があります。パラメータ1. `String`
web3.js@0.2x.x web3.eth.sendRawTransaction
`web3.eth.sendRawTransaction(signedTransactionData [, callback])`署名済みのトランザクションを送信します。パラメータ1. `String`サイン済みのトランザクション
web3.js@0.2x.x web3.eth.sendTransaction
`web3.eth.sendTransaction(transactionObject [, callback])`ネットワークにトランザクションを送信します。パラメータ1. `Object` - 送信するトランザクションオブジェクト`from` : `String`
web3.js@0.2x.x web3.eth.getCode
`web3.eth.getCode(addressHexString [, defaultBlock] [, callback])`特定のアドレスのコード取得します。パラメータ1. `String`コードを取得するアドレス
web3.js@0.2x.x web3.eth.getTransactionCount
`web3.eth.getTransactionCount`指定したアドレスから実行されたトランザクションの数を返します。パラメータ1. `String`トランザクション数を取得したいアドレス
web3.js@0.2x.x web3.eth.getTransactionReceipt
`web3.eth.getTransactionReceipt(hashString [, callback])`指定されたトランザクションハッシュに対応するトランザクションのレシートを返します。注意レシートは、未承認トランザクションでは利用できません。パラメータ
web3.js@0.2x.x web3.eth.getTransactionFromBlock
`getTransactionFromBlock(hashStringOrNumber, indexNumber [, callback])`ブロックハッシュまたはブロック番号と、トランザクションのインデックス位置に基づきトランザクションを返します。パラメータ1. `String|Number`ブロック番号またはハッシュ
web3.js@0.2x.x web3.eth.getTransaction
`web3.eth.getTransaction(transactionHash [, callback])`指定したトランザクションハッシュに対応するトランザクションを返します。パラメータ1. `String`トランザクションハッシュ
web3.js@0.2x.x web3.eth.getUncle
`web3.eth.getUncle(blockHashStringOrNumber, uncleNumber [, returnTransactionObjects] [, callback])`指定した Uncle インデックス位置の Uncle ブロックを返します。パラメータ1. `String|Number`ブロック番号またはハッシュ
web3.js@0.2x.x web3.eth.getBlockTransactionCount
`web3.eth.getBlockTransactionCount(hashStringOrBlockNumber [, callback])`指定したブロックのトランザクション数を返します。パラメータ1. `String|Number`ブロック番号またはハッシュ
web3.js@0.2x.x web3.eth.getBlock
` web3.eth.getBlock(blockHashOrBlockNumber [, returnTransactionObjects] [, callback])`ブロック番号またはブロックハッシュに対応するブロックを返します。パラメータ1. `String|Number`ブロック番号またはブロックハッシュ
web3.js@0.2x.x web3.eth.getStorageAt
`web3.eth.getStorageAt(addressHexString, position [, defaultBlock] [, callback])`アドレスの任意のインデックス位置のストレージを取得します。パラメータ1. `String`ストレージを取得するアドレス
web3.js@0.2x.x web3.eth.getBalance
`web3.eth.getBalance(addressHexString [, defaultBlock] [, callback])`任意のブロックにおけるアドレスの残高を返します。パラメータ1. `String`残高を取得するアドレス
web3.js@0.2x.x web3.eth.unRegister
` web3.eth.unRegister(addressHexString [, callback])`まだ実装されていません。参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethunregister#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.register
`web3.eth.register(addressHexString [, callback])`まだ実装されていません。参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3ethregister#web3.js@0.2x.x #web3.js
web3.js@0.2x.x web3.eth.accounts
`web3.eth.accounts`ノードによって管理されているアカウントのリストを返します。読み取り専用プロパティです。非同期コード`web3.eth.getAccounts(callback(error, result){ ... })`
web3.js@0.2x.x web3.eth.gasPrice
`web3.eth.gasPrice`現在のガスプライスを返します。ガスプライスの値は、最新の x ブロックの中央値です。読み取り専用プロパティです。非同期コード
web3.js@0.2x.x web3.eth.hashrate
`web3.eth.hashrate`ノードのハッシュレート(秒間あたりのハッシュ計算数)を返します。読み取り専用プロパティです。非同期コード`web3.eth.getHashrate(callback(error, result){ ... })`
web3.js@0.2x.x web3.eth.mining
`web3.eth.mining`ノードがマイニング中かどうかを返します。読み取り専用プロパティです。非同期コード`web3.eth.getMining(callback(error, result){ ... })`
web3.js@0.2x.x web3.eth.coinbase
`web3.eth.coinbase`マイニングの報酬が付与されるコインベースアドレスを返します。このプロパティは読み取り専用です。非同期の場合`web3.eth.getCoinbase(callback(error, result){ ... })`
web3.js@0.2x.x web3.eth.isSyncing
`web3.eth.isSyncing(callback)`同期が開始した際、更新した際、および停止した際にコールバック関数を呼びます。戻り値`Object`次のメソッドをもつ、`isSyncing` オブジェクト
web3.js@0.2x.x web3.eth.syncing
`web3.eth.syncing`ノードが同期中であれば "sync オブジェクト"が、同期中でなければ `false` が返されます。 このプロパティは読み取り専用です。戻り値`Object|Boolean`
web3.js@0.2x.x web3.eth.defaultBlock
`web3.eth.defaultBlock`以下のメソッドで使用されるデフォルトのブロックです。[web3.js@0.2x.x web3.eth.getBalance][web3.js@0.2x.x web3.eth.getStorageAt][web3.js@0.2x.x web3.eth.getCode]
web3.js@0.2x.x web3.eth.defaultAccount
`web3.eth.defaultAccount`つぎのメソッドで使用されるデフォルトのアドレスです。[web3.js@0.2x.x web3.eth.sendTransaction][web3.js@0.2x.x web3.eth.call]なお、上述のメソッドでは、`from`プロパティを指定することで、アドレスを上書きすることができます。
web3.js@0.2x.x web3.eth
`web3.eth`Ethereum ブロックチェーンに関連するメソッドを含みます。サンプルコード参考https://github.com/ethereum/wiki/wiki/JavaScript-API#web3eth
Created
a few seconds ago
by
sushiether
Updated
a few seconds ago
by
sushiether
Views: 1
Page rank: 0
Copy link
Copy readable link
web3.js@0.2x.x