基于web3.js和ganache实现智能合约调用

目的:智能合约发布到本地以太坊模拟软件ganache并完成交互

准备工作:

  • web3.js
  • ganache模拟软件

ganache参数配置

从ganache获取一个url,和一个账号的地址,

url直接使用图中的rpc server位置的数据即可

账号address从下列0x开头的账号任选一个复制,

web3.js代码

如下所示

c 复制代码
const { Web3 } = require('web3');
const rpcURL = "http://127.0.0.1:7545";
const web3 = new Web3(rpcURL);
const address = "0x6531e1Ed6f9E1BB0c1aA8957770F385Bb44d4e9B";

async function getBalance() {
    try {
        const wei = await web3.eth.getBalance(address);
        const balance = web3.utils.fromWei(wei, 'ether');
        console.log('账号:', address, ' 的余额为:', balance);
    } catch (error) {
        console.error('发生错误:', error);
    }
}

getBalance();

代码运行成功说明ganache模拟的以太坊网络正常工作,运行结果如下:

c 复制代码
账号: 0x6531e1Ed6f9E1BB0c1aA8957770F385Bb44d4e9B  的余额为: 99.992407942200075824
相关推荐
布兰妮甜7 小时前
Vue 项目 `localhost:3000` 打不开?404 常见原因排查指南
前端·javascript·vue.js·vuecli·4040排查
森林的尽头是阳光7 小时前
前端使用postman快速造数据
前端·javascript·vue·postman·造数·本地测试
丷丩7 小时前
MapLibre GL JS第38课:根据缩放级别改变建筑颜色
javascript·map·mapbox·maplibre gl js
半个烧饼不加肉8 小时前
JS 底层探究--上下文
开发语言·javascript·ecmascript
无风听海9 小时前
PKCE 的 S256 算法深度剖析:从协议设计到密码学原理
javascript·网络·算法·密码学
小新1109 小时前
vue实战项目 计算器
前端·javascript·vue.js
老毛肚9 小时前
jeecgboot vue 路由 拆分01
前端·javascript·typescript
带娃的IT创业者9 小时前
预测市场的至暗时刻:从西班牙封锁事件看Web3监管的技术博弈
web3·区块链·智能合约·监管合规·预测市场·去中心化应用
西部荒野子9 小时前
Zustand 状态管理规范:别让轻量状态变成隐形通知风暴
前端·javascript