web3 web3.js是什么

web3.js 是以太坊提供的一个 Javascript 库 , 它封装了以太坊的 JSON RPC API , 提供了一系列与区块链交互的 Javascript 对象和函数 , 包括查看网络状态 , 查看本地账户、查看交易和区块、发送交易、编译/部署智能合约、调用智能合约等 , 其中最重要的就是与智能合约交互的 API 。

web3 web3.js是什么

文章插图
Web3.js API 基本为了让你的 Dapp 运行上以太坊 , 一种选择是使用 web3.js library 提供的 web3 。对象 。底层实现上 , 它通过 RPC 调用与本地节点通信 。web3.js 可以与任何暴露了 RPC 接口的以太坊节点连接 。
web3 中有 eth 对象 – web3.eth 具体来表示与以太坊区块链之间的交互 。shh 对象 – web3.shh 表示 Whisper 协议的相关交互 。后续我们会继续介绍其它一些 web3 协议中的对象 。
Web3.js 入门web3.js 库是一系列模块的集合 , 服务于以太坊生态系统的各个功能 , 如:
web3-eth 用来与以太坊区块链及合约的交互;
web3-shh Whisper 协议相关 , 进行 p2p 通信和广播;
web3-bzz swarm 协议(去中心化文件存储)相关;
web3-utils 包含一些对 DApp 开发者有用的方法 。
引入 web3.js首先 , 需要将 web3.js 引入到项目中 。可以使用以下方法来完成:
npm: npm install web3meteor: meteor add ethereum:web3pure js: link the dist/web3.min.js然后你需要创建一个 web3 的实例 , 设置一个 provider 。支持以太坊的浏览器如 Mist 或 MetaMask 会有提供一个 ethereumProvider 或 web3.currentProvider。
对于 web3.js 来说 , 可以检查 Web3.givenProvider  , 如果属性为 null 再连接本地或远程的节点 。
【web3 web3.js是什么】