基于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
相关推荐
记得早睡~4 小时前
leetcode51-N皇后
javascript·算法·leetcode·typescript
拉不动的猪5 小时前
vue自定义指令的几个注意点
前端·javascript·vue.js
yanyu-yaya5 小时前
react redux的学习,单个reducer
前端·javascript·react.js
加瓦点灯6 小时前
观察者模式:解耦对象间的依赖关系
开发语言·javascript·观察者模式
z_mazin6 小时前
Chrome开发者工具实战:调试三剑客
前端·javascript·chrome·网络爬虫
sen_shan8 小时前
Vue3+Vite+TypeScript+Element Plus开发-04.静态菜单设计
前端·javascript·typescript·vue3·element·element plus·vue 动态菜单
旧识君8 小时前
移动端1px终极解决方案:Sass混合宏工程化实践
开发语言·前端·javascript·前端框架·less·sass·scss
ElasticPDF-新国产PDF编辑器8 小时前
Angular use pdf.js and Elasticpdf tutorial
javascript·pdf·angular.js
Carlos_sam9 小时前
Openlayers:海量图形渲染之图片渲染
前端·javascript
你的人类朋友9 小时前
MQTT协议是用来做什么的?此协议常用的概念有哪些?
javascript·后端·node.js