基于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
相关推荐
云中飞鸿8 小时前
函数:委托
javascript
TechubNews9 小时前
香港 Web3 每日必读:华夏港元数字货币基金将在港交所上市买卖
web3
老前端的功夫9 小时前
前端技术选型的理性之道:构建可量化的ROI评估模型
前端·javascript·人工智能·ubuntu·前端框架
狮子座的男孩9 小时前
js函数高级:04、详解执行上下文与执行上下文栈(变量提升与函数提升、执行上下文、执行上下文栈)及相关面试题
前端·javascript·经验分享·变量提升与函数提升·执行上下文·执行上下文栈·相关面试题
0***R5159 小时前
Web3.0在去中心化应用中的事件监听
web3·去中心化·区块链
许强0xq9 小时前
Q19: fallback 和 receive 有什么区别?
面试·web3·区块链·solidity·以太坊·evm
芒果量化9 小时前
区块链 - 铸币、转账实例介绍solidity
web3·区块链·智能合约
爱学习的程序媛9 小时前
《JavaScript权威指南》核心知识点梳理
开发语言·前端·javascript·ecmascript
乐观主义现代人10 小时前
go 面试
java·前端·javascript
2501_9418868610 小时前
多语言微服务架构下的微服务熔断与限流优化实践
javascript