基于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
相关推荐
Vennn14 小时前
Android自动化:使用 Web 方式实现某音未读消息检查与采集
前端·javascript·vue.js
Smilezyl14 小时前
为了搞懂 AI Agent,我用 6000 行 JS 代码手搓了一个零依赖的 Coding Agent
前端·javascript·github
掰头战士14 小时前
搞定JavaScript类型判断,一文就够了
javascript
周凡12315 小时前
AI 时代的 Web JavaScript 逆向分析实践与思考
前端·javascript·人工智能
zhoumeina9915 小时前
分段创建产品,tab 页切换又要保留缓存
前端·javascript
The Sheep 202315 小时前
EFcore 查询数据
java·javascript
怕浪猫15 小时前
Electron 开发实战(七):网络通信与 API 集成全解
前端·javascript·electron
w_t_y_y16 小时前
vue父子组件通信(一)父子调用和通信(2)VUE3
前端·javascript·vue.js
ZC跨境爬虫16 小时前
跟着 MDN 学CSS day_42:等分轨道、层叠放置与混合布局
前端·javascript·css·ui·html