Truffle でビルド済みのコントラクトの ABI を取得する方法を紹介します。
一番簡単なのは、./build/contracts
ディレクトリにビルド済みのコントラクト ABI や bytecode が記録されている JSON ファイルがあるので、そこから取得する方法です。
たとえば、ExampleSmartContract
というクラスをコンパイルすると、./build/contracts/ExampleSmartContract.json
というファイルができているので、そのなかの abi
の値をみます。
サンプルコード
- JavaScript (Node.js) によるサンプルコードです。
- ExampleSmartContract というクラスをコンパイルした場合のサンプルです。
const fs = require('fs');
const contract = JSON.parse(fs.readFileSync('./build/contracts/ExampleSmartContract.json', 'utf8'));
console.log(JSON.stringify(contract.abi));
参考
Note
- Ethereum 関連の情報は https://scrapbox.io/sushiether/ に集約することにしました。
- この記事の内容に変更・更新がある場合は、以下の URL を更新します。
- https://scrapbox.io/sushiether/Truffle_でコントラクトの_ABI_を取得