如何进行以太坊web3.js文档翻译及说明

今天就跟大家聊聊有关如何进行以太坊web3.js文档翻译及说明,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

web3介绍

Web3是一套和以太坊节点进行通信的API,如果我们需要基于以太坊来开发去中心化应用,则web3是必须要了解的内容,例如需要通过Web3来获取节点状态,获取账号信息,调用合约、监听合约事件等等。

注: 智能合约是运行在节点提供的虚拟机上,因此调用智能合约也需要像节点发送请求。

Web3其实是对节点暴露出来的JSON-RPC接口进行了封装,它有多个语言版本的实现:

  • JavaScript Web3.js

  • Python Web3.py

  • Haskell hs-web3

  • Java web3j

  • Scala web3j-scala

  • Purescript purescript-web3

  • PHP web3.php

  • PHP ethereum-php

web3.js版本说明

web3.js 有两个不兼容的版本:0.20.x 及 1.0beta,1.0对0.20版本做了重构,并且引入了Promise来简化异步编程,避免层层的回调嵌套。

做一个对比,下面使用两个版本来获取当前块号:

// 0.20 版本
web3.eth.getBlockNumber(function callback(err, value) {
     console.log("BlockNumber:" + value)
});
// 1.0 版本
web3.eth.getBlockNumber().then(console.log);

在来看看获取账号余额:

// 0.20 版本
web3.eth.getAccounts(function callback1(error, result){
    web3.eth.getBalance(result[0], function callback2(error, value) {
        console.log("value" + value);
    });
 })
// 1.0 版本
web3.eth.getAccounts()
   .then((res) => web3.eth.getBalance(res[0]))
   .then((value) => console.log(value) );

使用1.0版本代码上要比0.2版本简洁一些,有一点需要特别注意,web3的多数接口都是异步调用形式,通常最后一个参数是回调函数。

看完上述内容,你们对如何进行以太坊web3.js文档翻译及说明有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注蜗牛博客行业资讯频道,感谢大家的支持。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram