资讯专栏INFORMATION COLUMN

以太坊web3.js文档翻译及说明

赵春朋 / 2763人阅读

摘要:这些天,为了录制以太坊开发实战课程,我准备把文档全部翻译一下并做适当的补充,目前版本已经翻译完成,欢迎大家前往查阅。

这些天,为了录制以太坊DAPP开发实战课程,我准备把web3文档全部翻译一下(并做适当的补充),目前web3.js 0.20.x 版本 已经翻译完成,欢迎大家前往查阅。

这里还几个实用DEMO,供大家参考:

使用web3.js API在页面中转账

web3.js 0.20 API 使用Demo

web3.js 1.0 文档中文版 正在翻译中,请大家关注更新。

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的多数接口都是异步调用形式,通常最后一个参数是回调函数。

再次厚脸皮的给大家推荐,
想要学习去中心化应用开发,这门课程不容错过区块链全栈-以太坊DAPP开发实战

本教程由登链学院翻译,由深入浅出区块链发布。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/97557.html

相关文章

  • 以太web3.js文档翻译说明

    摘要:这些天,为了录制以太坊开发实战课程,我准备把文档全部翻译一下并做适当的补充,目前版本已经翻译完成,欢迎大家前往查阅。 这些天,为了录制以太坊DAPP开发实战课程,我准备把web3文档全部翻译一下(并做适当的补充),目前web3.js 0.20.x 版本 已经翻译完成,欢迎大家前往查阅。 这里还几个实用DEMO,供大家参考: 使用web3.js API在页面中转账 web3.js 0....

    makeFoxPlay 评论0 收藏0
  • 如何使用Web3.js API 在页面中进行转账

    摘要:本文首发于深入浅出区块链社区原文链接如何使用在页面中进行转账原文已更新,请读者前往原文阅读本文介绍如何使用在页面中进行转账,是我翻译的文档中文版及区块链全栈以太坊开发实战中的文章说明。 本文首发于深入浅出区块链社区原文链接:如何使用Web3.js API 在页面中进行转账原文已更新,请读者前往原文阅读 本文介绍如何使用Web3.js API 在页面中进行转账,是我翻译的文档Web3.j...

    xiaolinbang 评论0 收藏0
  • 如何使用Web3.js API 在页面中进行转账

    摘要:本文首发于深入浅出区块链社区原文链接如何使用在页面中进行转账原文已更新,请读者前往原文阅读本文介绍如何使用在页面中进行转账,是我翻译的文档中文版及区块链全栈以太坊开发实战中的文章说明。 本文首发于深入浅出区块链社区原文链接:如何使用Web3.js API 在页面中进行转账原文已更新,请读者前往原文阅读 本文介绍如何使用Web3.js API 在页面中进行转账,是我翻译的文档Web3.j...

    zhisheng 评论0 收藏0
  • Web3.js 0.20.x API 中文版翻译

    摘要:使用回调由于这套被设计来与本地的结点交互,所有函数默认使用同步的的请求。批量请求可以允许将多个请求放入队列,并一次执行。这里的批量请求主要目的是用来保证请求的串行执行。列表本教程由登链学院翻译,由深入浅出区块链发布。 本文首发于深入浅出区块链社区原文链接:Web3.js 0.20.x API 中文版翻译原文已更新,请读者前往原文阅读 文档原始链接为:https://web3.learn...

    jsliang 评论0 收藏0
  • Web3.js 0.20.x API 中文版翻译

    摘要:使用回调由于这套被设计来与本地的结点交互,所有函数默认使用同步的的请求。批量请求可以允许将多个请求放入队列,并一次执行。这里的批量请求主要目的是用来保证请求的串行执行。列表本教程由登链学院翻译,由深入浅出区块链发布。 本文首发于深入浅出区块链社区原文链接:Web3.js 0.20.x API 中文版翻译原文已更新,请读者前往原文阅读 文档原始链接为:https://web3.learn...

    SexySix 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<