MetaMask を使用した Web3 の初期化
3405 ワード
- MetaMask は Chrome プラグインとして使える大変便利な Ethereum ウォレットです。
- MetaMask を使用するとボタン 1 つでトランザクションに署名ができるので、エンドユーザーが DApps を使用する際に重宝します。
MetaMask を使用した Web3 の初期化
- MetaMask をアンロックした状態で、Web3 ライブラリを使用しているウェブサイトを開くと、web3 というグローバル変数に自動的に Web3 オブジェクトがインジェクトされます。
- 通常、web3 にセットされたオブジェクトをそのまま使用するのではなく、次のような方法で初期化します。
- なお、MetaMask の github によると、ブラウザの load イベントで MetaMask のインジェクトが行われるようです。
var web3js; // ローカルの Web3 オブジェクトを格納するための変数
window.addEventListener('load', function() {
// Web3 が Ethereum 対応ブラウザ (Mist や MetaMask) によってインジェクトされているかどうかをチェックします。
if (typeof web3 !== 'undefined') {
// Mist または MetaMask のプロバイダを使用して Web3 を初期化します。
web3js = new Web3(web3.currentProvider);
} else {
// Mist や MetaMask 等の Ethereum 対応ブラウザを使用していない場合の初期化です。
// 必要に応じて、ローカルノードやホスティングしているノード等を使用します。
// 以下の例では infura.io をプロバイダとして使用し、Web3 を初期化しています。
web3js = new Web3('wss://mainnet.infura.io/ws');
}
});
References
- https://github.com/MetaMask/faq/blob/master/DEVELOPERS.md
- https://github.com/MetaMask/faq/blob/master/detecting_metamask.md
Note
- Ethereum 関連の情報は https://scrapbox.io/sushiether/ に集約することにしました。
- この記事の内容に変更・更新がある場合は、以下の URL を更新します。
- https://scrapbox.io/sushiether/MetaMask_を使用した_Web3_の初期化
var web3js; // ローカルの Web3 オブジェクトを格納するための変数
window.addEventListener('load', function() {
// Web3 が Ethereum 対応ブラウザ (Mist や MetaMask) によってインジェクトされているかどうかをチェックします。
if (typeof web3 !== 'undefined') {
// Mist または MetaMask のプロバイダを使用して Web3 を初期化します。
web3js = new Web3(web3.currentProvider);
} else {
// Mist や MetaMask 等の Ethereum 対応ブラウザを使用していない場合の初期化です。
// 必要に応じて、ローカルノードやホスティングしているノード等を使用します。
// 以下の例では infura.io をプロバイダとして使用し、Web3 を初期化しています。
web3js = new Web3('wss://mainnet.infura.io/ws');
}
});
- https://github.com/MetaMask/faq/blob/master/DEVELOPERS.md
- https://github.com/MetaMask/faq/blob/master/detecting_metamask.md
Note
- Ethereum 関連の情報は https://scrapbox.io/sushiether/ に集約することにしました。
- この記事の内容に変更・更新がある場合は、以下の URL を更新します。
- https://scrapbox.io/sushiether/MetaMask_を使用した_Web3_の初期化
Author And Source
この問題について(MetaMask を使用した Web3 の初期化), 我々は、より多くの情報をここで見つけました https://qiita.com/hm0429/items/64fecfb1e405568c1a9b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .