使用ethers.js获取以太坊余额:开发指南与常见问题解决
创作时间:
作者:
@小白创作中心
使用ethers.js获取以太坊余额:开发指南与常见问题解决
引用
CSDN
1.
https://blog.csdn.net/qq_39088514/article/details/140834846
本文将介绍如何使用ethers.js库获取Vitalik Buterin的以太坊余额,并分享在开发过程中遇到的一些常见问题和解决方法。
开发环境搭建
- 打开VSCode,创建一个新的文件夹,或者在本地创建好文件夹后选择打开。
- 在VSCode的TERMINAL中输入以下命令来安装ethers.js库:
npm install ethers --save
注意: 最新版的ethers.js库与文档中的方法可能不兼容,会导致运行失败。如果遇到ethers.formatEther is not a function错误,需要将代码改为:
console.log(`ETH Balance of vitalik: ${ethers.utils.formatEther(balance)} ETH`);
如果希望使用与文档一致的版本,可以安装5.6.9版本:
npm install ethers@5.6.9
由于是新建的目录,需要在package.json文件中添加"type": "module"字段。
代码实现
在项目目录中新建一个名为hello.js的JavaScript文件,输入以下代码:
import { ethers } from "ethers";
const provider = ethers.getDefaultProvider();
const main = async () => {
const balance = await provider.getBalance(`vitalik.eth`);
console.log(`ETH Balance of vitalik: ${ethers.utils.formatEther(balance)} ETH`);
}
main();
运行与调试
在TERMINAL中输入node hello.js运行代码。可能会遇到以下错误:
Error: ENS name not configured (operation="resolveName(\"vitalik.eth\")", code=UNSUPPORTED_OPERATION, version=providers/5.7.1)
这是因为默认的Provider不支持ENS(以太坊域名服务)解析。解决方法是在Alchemy或Infura中注册并获取API key,然后使用JsonRpcProvider。以下是使用Alchemy的示例代码:
import { ethers } from "ethers";
const provider = ethers.getDefaultProvider();
const main = async () => {
const provider = new ethers.providers.JsonRpcProvider("https://eth-mainnet.g.alchemy.com/v2/你的key");
const balance = await provider.getBalance(`vitalik.eth`);
console.log(`ETH Balance of vitalik: ${ethers.utils.formatEther(balance)} ETH`);
}
main();
运行成功后,将输出Vitalik Buterin的以太坊余额:
ETH Balance of vitalik: 356.103908103441132271 ETH
总结
通过本文的介绍,读者可以了解如何使用ethers.js库获取以太坊地址的余额,并掌握在开发过程中遇到的一些常见问题及其解决方案。这对于区块链开发初学者来说是一个很好的实践案例。
热门推荐
项庄舞剑:项羽与刘邦的权衡与较量
海南昌江皇帝洞:自然与人文的完美融合
欠40万网贷无力偿还怎么办?有哪些解决方案?
西红柿炒鸡蛋,先炒西红柿?还是先炒鸡蛋,大厨教你不一样的做法
张掖市旅游指南:探索黄河上游的秘密
动态心电图结果怎么看? 揭秘心电图数据的异常信号
中国提出创新算法:NVIDIA GPU科学计算性能提升800倍!
常熬夜/忍尿易伤肾?5招预防肾病免洗肾,这样饮水最有效!
肾病的症状、预防及最新治疗方法
行业研究如何获取关键信息
射波刀适合哪些肿瘤?
五蕴皆空是什么意思?《心经》中这个故事让人瞬间明白
《心经》念了好几遍,还是不懂啥意思?
保险出险的多少影响保险费用吗 出险的金额多少影响第二年保险金额
促进小麦土壤肥力提升的综合施肥技术及其应用分析
低剂量维生素E也能治疗脂肪肝?中国研究证实,有效且更安全
融入感情是写作的最高境界,真情实感是引流的重要法宝
民法典对夫妻财产约定的认定
“City不City”“she young young”……双语梗为何频频出圈?
天冷易饿?营养师推荐低脂暖身料理,这样吃既保暖又不易发胖
国家规定的产假天数及法律解读
Win11上检测手柄怎么做?如何确认手柄连接正常?
VScode配置自动代码格式化C/C++详解
Unity VS 虚幻引擎,你应该选择哪一个?
Unity 和虚幻引擎有什么作用?主要区别是?学哪个?
如何发现具有潜力的翻倍牛股?这种发现有哪些技巧?
情绪智商如何提升你的领导力效能?
豆雁:一种大型雁类的生态特征与分布现状
寻找养老产业的下一个“风口”:不打价格战 重点关注老人的精神需求
庞贝古城发现古罗马儿童涂鸦:记录角斗士决斗场景