博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
以太坊web3.js文档翻译及说明
阅读量:6266 次
发布时间:2019-06-22

本文共 1035 字,大约阅读时间需要 3 分钟。

hot3.png

这些天,为了录制,我准备把web3文档全部翻译一下(并做适当的补充),目前**** 已经翻译完成,欢迎大家前往查阅。

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

,请大家关注更新。

web3介绍

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

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

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

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

再次厚脸皮的给大家推荐, 想要学习去中心化应用开发,这门课程不容错过

本教程由**翻译,由**发布。

转载于:https://my.oschina.net/u/3724910/blog/2032261

你可能感兴趣的文章
IIS7显示ASP的详细错误信息到浏览器
查看>>
使用fiddler对手机APP进行抓包
查看>>
exit和_exit的区别
查看>>
Javascript、Jquery获取浏览器和屏幕各种高度宽度(单位都为px)
查看>>
php不重新编译,安装未安装过的扩展,如curl扩展
查看>>
JavaScript编码encode和decode escape和unescape
查看>>
ppp点对点协议
查看>>
html5游戏开发-简单tiger机
查看>>
Codeforces 712C Memory and De-Evolution
查看>>
编写的windows程序,崩溃时产生crash dump文件的办法
查看>>
Ural2110 : Remove or Maximize
查看>>
Django REST framework 的TokenAuth认证及外键Serializer基本实现
查看>>
《ArcGIS Runtime SDK for Android开发笔记》——问题集:如何解决ArcGIS Runtime SDK for Android中文标注无法显示的问题(转载)...
查看>>
Spring Boot日志管理
查看>>
动态注册HttpModule管道,实现global.asax功能
查看>>
使用 ES2015 编写 Gulp 构建
查看>>
[转]Using NLog for ASP.NET Core to write custom information to the database
查看>>
BZOJ 4766: 文艺计算姬 [矩阵树定理 快速乘]
查看>>
MySQL 的instr函数
查看>>
Hibernate的核心对象关系映射
查看>>