Copyright © 2022-2024 aizws.net · 网站版本: v1.2.6·内部版本: v1.23.3·
页面加载耗时 0.00 毫秒·物理内存 61.9MB ·虚拟内存 1299.8MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
我们将尝试通过 web3.js 访问区块链网络,将读取某个账号的余额。
首先启动 node:
$ node
在 node 控制台中加载 Web3.js 库:
const Web3 = require('web3')
接下来,使用Infura URL,创建Web3连接。声明Infura URL变量:
const rpcURL = "https://mainnet.infura.io/YOUR_INFURA_API_KEY"
确保使用之前获得的实际 Infura API 密钥替换此处的 YOUR_INFURA_API_KEY。创建 Web3 连接:
const web3 = new Web3(rpcURL)
现在有了这个 Web3 连接,就可以与以太坊主网进行通信。
让我们使用这个连接来检查这个帐户的余额: 0x03118E2c88676d31ee397E1eEf7789fECfbC40b9。通过使用web3.eth.getBalance()检查帐户余额,我们可以看一下这个帐户下有多少以太币。
首先,将地址赋给一个变量:
const address = "0x03118E2c88676d31ee397E1eEf7789fECfbC40b9"
检查账户余额:
// 读取 address 中的余额,余额单位是 wei web3.eth.getBalance(address, (err, wei) => { // 余额单位从wei转换为ether balance = web3.utils.fromWei(wei, 'ether') console.log("balance: " + balance) })
输出:
balance: 6.97320381
以下是本教程中编写的代码概要:
const Web3 = require('web3') const rpcURL = '' // RPC URL const web3 = new Web3(rpcURL) const address = '' // 账户地址 // 读取 address 中的余额,余额单位是 wei web3.eth.getBalance(address, (err, wei) => { // 余额单位从 wei 转换为 ether balance = web3.utils.fromWei(wei, 'ether') console.log("balance: " + balance) })
Web3.js 更多使用细节,可以参考官方文档:https://web3js.readthedocs.io/。
注意,Web3.js 正在积极开发中,可以访问 Web3.js github 存储库,了解它的进展,也可以阅读代码更好地理解库本身。
web3.js github库: https://github.com/ethereum/web3.js/。
智能合约对象是 JavaScript 中对智能合约的表示,可以使用智能合约对象访问智能合约。对象可以使用 web3.eth.Contract() 函数获得,此函数需要2个参数: 智能合约ABI、智能合约地址。& ...