这期内容当中小编将会给大家带来有关如何解析web3.js,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
web3.js是开发以太坊去中心化应用(DApp)必备的JavaScript库。那么,web3.js的作用是什么?它的实现原理又是什么?
以太坊网络是由众多彼此平等的节点组成的P2P网络,其中每个节点都有整个区块链的拷贝。当你希望调用链上一个智能合约的方法时,需要连接到其中的某个节点并告知节点智能合约的地址、 你希望调用的方法以及向该方法传入的参数
不过以太坊节点只能理解JSON-PRC,这是一种远程调用协议,这种协议对人而言并不是很友好、易读。你发送给节点的对合约方法的调用请求看起来就像这样:
// Yeah... Good luck writing all your function calls this way! {"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{"from":"0xb60e8dd61c5d32be8058bb8eb970870f07233155","to":"0xd46e8dd67c5d32be8058bb8eb970870f07244567","gas":"0x76c0","gasPrice":"0x9184e72a000","value":"0x9184e72a","data":"0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675"}],"id":1}
看起来不那么爽,对吧?
幸运的是,web3.js把这些复杂的调用请求封装起来,让你只需要通过更加友好的javascript接口来和以太坊节点交互。使用web3.js时,你要发送上面的JSON-PRC请求,只需要类似于如下的以下代码:
CryptoZombies.methods.createRandomZombie("Vitalik Nakamoto ") .send({ from: "0xb60e8dd61c5d32be8058bb8eb970870f07233155", gas: "3000000" })
上述就是小编为大家分享的如何解析web3.js了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。