如何在Ethereum 2.0中编写查询Validator余额的JS代码?

技术以太坊2.0查询Validator余额的JS代码怎么写以太坊2.0查询Validator余额的JS代码怎么写,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,

在Ethereum 2.0中,如何编写检查Validator平衡的JS代码,很多新手都不是很清楚。为了帮助大家解决这个问题,下面小编就详细讲解一下。需要的人可以从中学习,希望你能有所收获。

ETH 2.0中抵押的一个基本要求是监控其验证者余额。我们将学习如何使用Infura的ETH 2.0信标链API编写一个程序来查询验证者余额。

ETH 2.0的零阶段起步越来越近,参与威迪上房贷和即将上线的altona测试的兴趣也越来越大。——调查报告显示,超过65%的受访者表示希望抵押自己的ETH。

首先,我们需要引入axio库,并创建一个HTTP客户端,从环境变量中加载Infura项目ID:

来自“axios”的重要信息;

const instance=axios . create({ 0

base URL : ‘ https://witti . infura . io/’,

auth:{

username : process . env . infura _ PROJECt _ ID,

密码: ‘ ‘,

},

});我们需要定义一些网络相关的参数。前两个帮助我们计算当期(epoch),最后一个用于将余额单位从gwei转换为eth,我们比较熟悉:

constSECONDS _ PER _ SLOT=12

constSLOTS _ PER _ EPOCH=32

constGWEI _ PER _ ETH=1000000000接下来,我们将查询网络的创建数据来计算当前周期:

(async()={ 0

let response=await instance . get(‘ node/genesis _ time ‘)

constGenesistime=response . data;

const now=math . floor(date . now()/1000)

常量epoch=math . floor((now-创世纪时间)/(秒_ per _ slot * slots _ per _ epoch))有了这些代码,我们就可以查询Validator的当前余额了。这里,我们在编写文章时使用具有最高平衡的验证器的公钥:

response=awaitinstance.post(‘信标/验证器’,{ 0

epoch : currenttepoch . tostring(),

public key :[‘0xb 0 BFA 93603 f 81 ecaf 3c 450 b 793 e 71 f 7372822 CD 2002534364493 e4e 497 FB 5 df 16d 252 AE 2 FDC 6 BBC 0 e 74d 849 f 918 db 393 ‘],

});

const balancegwei=response . data[0]。平衡;

const balance=balanceGwei/GWEI _ PER _ ETH;

console . log(` youhave $ { balance }2.0 `);

})();当我们运行这个程序时,我们可以看到以下输出:

你有32.500178823 2.0以下是查询ETH 2.0校验器余额的完整代码:

来自“axios”的重要信息;

const instance=axios . create({ 0

base URL : ‘ https://witti . infura . io/’,

auth:{

username : process . env . infura _ PROJECt _ ID,

密码: ‘ ‘,

},

});

constSECONDS _ PER _ SLOT=12

constSLOTS _ PER _ EPOCH=32

constGWEI _ PER _ ETH=1000000000

(async()={ 0

let response=await instance . get(‘ node/genesis _ time ‘)

constGenesistime=response . data;

const now=math . floor(date . now()/1000)

const current poch=math . floor((now-genesisTime)/(SECONDS _ PER _ SLOT * SLOTS _ PER _ EPOCH))

response=awaitinstance.post(‘信标/验证器’,{ 0

epoch : currenttepoch . tostring(),

public key :[‘0xb 0 BFA 93603 f 81 ecaf 3c 450 b 793 e 71 f 7372822 CD 2002534364493 e4e 497 FB 5 df 16d 252 AE 2 FDC 6 BBC 0 e 74d 849 f 918 db 393 ‘],

});

const balancegwei=response . data[0]。平衡;

const balance=balanceGwei/GWEI _ PER _ ETH;

console . log(` youhave $ { balance }2.0 `);

})();阅读以上内容对你有帮助吗?如果您想了解更多相关知识或阅读更多相关文章,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/144829.html

(0)

相关推荐

  • c++编译器(c++用什么软件编程)

    技术将C++ 类型属性暴露给QML的示例分析这期内容当中小编将会给大家带来有关将C++ 类型属性暴露给QML的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、数据类型处理和所

    攻略 2021年12月15日
  • 桑巴CVE-2018-1050和CVE-2018-1057指的是什么?

    技术Samba CVE-2018-1050和CVE-2018-1057指的是什么这篇文章将为大家详细讲解有关Samba CVE-2018-1050和CVE-2018-1057指的是什么,文章内容质量较高,因此小编分享给大

    攻略 2021年12月20日
  • 伤害英语,几个关于伤害的英语词汇的区别

    技术伤害英语,几个关于伤害的英语词汇的区别damage: 指部分性的损坏,意味着损坏后价值降低,有损于功能、吸引力及效率降低伤害英语。 destroy 指完全彻底的破坏,常有不能或很难修复的意思。
    harm: 较为通俗

    生活 2021年10月24日
  • 11月17日Java学习日记

    技术11月17日Java学习日记 11月17日Java学习日记面向对象编程(oop)面向对象:物以类聚,分类的思维模式,思考问题,首先解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类

    礼包 2021年11月18日
  • 大数据中如何进行文件上传漏洞的分析

    技术大数据中如何进行文件上传漏洞的分析今天就跟大家聊聊有关大数据中如何进行文件上传漏洞的分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、环境:dvwa二、选

    攻略 2021年12月10日
  • 如何使用系统SQL实体自动创建非聚集索引

    技术如何使用系统SQL实体自动创建非聚集索引小编给大家分享一下如何使用系统SQL实体自动创建非聚集索引,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一

    攻略 2021年11月23日