基于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
相关推荐
ZC跨境爬虫9 分钟前
模块化烹饪小程序开发日记 Day1:项目初始化与模块化目录设计
前端·javascript·ui·微信小程序·音视频
薛定猫AI2 小时前
【深度解析】从 Antigravity 更新看 Agent IDE 的工程化演进:权限、沙盒、MCP 与模型治理
前端·javascript·ide
漂流瓶jz9 小时前
总结CSS组件化演进之路:命名规范/CSS Modules/CSS in JS/原子化CSS
前端·javascript·css
steven~~~10 小时前
为什么mq报错
javascript
threelab12 小时前
Three.js 初中数学函数可视化 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
凉辰12 小时前
解决 H5 键盘遮挡与页面上推
开发语言·javascript·计算机外设
zz58814 小时前
面试官问"JS的类型"时,到底想听到什么?
javascript
gjwjuejin14 小时前
全埋点技术方案深度剖析:从事件代理到无痕采集的完整实现
javascript
前端若水15 小时前
在 Vue 2 与 Vue 3 中使用 markdown-it-vue 渲染 Markdown 和数学公式
前端·javascript·vue.js
之歆15 小时前
DAY_10 JavaScript 深度解析:原型链 · 引用类型 · 内置对象 · 数组方法全攻略(下)
开发语言·前端·javascript·ecmascript