网站怎么做网页游戏,九度网站建设,合肥网站建设优化学习,建立微信公众号收费吗1. 使用 Web3 库 Web3 是一个 JavaScript 库#xff0c;可用于通过 RPC 通信与以太坊节点通信。 Web3 的工作方式是#xff0c;公开已通过 RPC 启用的方法#xff0c;这允许开发利用 Web3 库的用户界面#xff0c;以便与部署在区块链上的合约进行交互。 一旦 Geth JavaScri…1. 使用 Web3 库 Web3 是一个 JavaScript 库可用于通过 RPC 通信与以太坊节点通信。 Web3 的工作方式是公开已通过 RPC 启用的方法这允许开发利用 Web3 库的用户界面以便与部署在区块链上的合约进行交互。 一旦 Geth JavaScript 控制台运行就可以查询 Web3,如下图所示 1.1 合约部署 可以使用 Geth 部署简单的合约并通过 Geth 提供的命令行界面 控制台或附加 与 Web3 进行交互。 其次将代码粘贴到 Remix IDE 后它将如下图所示 下图显示了 Web3 部署脚本 显示了将 Web3 部署脚本粘贴到 Geth 控制台进行部署时的输出。还可以通过 Geth 日志进行验证你将看到类似于以下内容的消息 成功部署合约后可以查询与此合约相关的各种属性。如下图所示这包括合约地址和 ABI 定义等。 1.2 POST 请求 可以通过 HTTP 上的 JSONRPC 与 Geth 进行交互。为此可以使用 curl 工具。
1.3 HTML 和 JavaScript 前端 网页可以提供更友好与合约进行交互的方式因此可以考虑使用 HTML/JS/CSS 的网页中的 Web3.js 库与合约进行交互。 可以使用任何 HTTP Web 甩务器来提供 HTML 内容而 Web3.js 则可以通过本地 RPC 连接到正在运行的以太坊客户端 Geth), 并为区块链上的合约提供接口。如下图所示 2. 安装和使用 Web3.js 只需发出以下命令即可通过 npm 安装 Web3:
[admindaolian ~]$npm install web3
现在,可以使用任何浏览器来通过 TCP 端口 7777 查看服务的网页,如下图所示. 应该注意的是,此处显示的输出在浏览器的控制台窗口中.
3. 开发框架 以太坊现在有各种开发框架。从上面讨论的示例中可以看出通过手动方式部署合约可能会非常耗时如果能够使用 Truffle 或类似框架如 Embark),则可以使该过程简单、更快捷。我们选择 Truffle 是因为它拥有更活跃的开发者社区并且是目前使用最广泛的以太坊开发框架。请注意现在还没有 “最佳” 框架因为所有框架都旨在提供简化开发、测试和部署的方法。
4. Truffle 应用示例 前文简介绍过 Truffle, 本节将讨论 Truffle 的示例项目该项目将演示如何使用 Truffle 来开发完整的去中心化应用程序。 我们将使用 Ganache 作为本地区块链来提供 Web3 接口.因此,你需要确保 Ganache 在后台运行并进行挖矿.在以下示例中,它有 5 个帐户,并在端口 7545 上运行.可以在 Ganache 的 SERVER(服务器) 选项中修改这些选项,如下图所示: 为了验证这一点, 可以在 Ganache 中显示交易的帐户列表,如下图所示: 还要注意的是,如下图所示,以太币已从帐户中被消耗掉.随着交易的运行,可以在 Ganache 中看到 BALANCE (余额) 更新. 这将显示类似于下图所示的输出. 这 打开 Web 浏览器并转到 http://localhost:8080,这将显示下图所示的输出. 这些交易将显示在 Ganache 上,如下图所示 6. 去中心化存储 为了充分利用去中心化机制除去中心化状态/计算区块链之外还可以对存储和通信层也去中心化。 传统上Web 内容是通过集中式服务器提供服务但也可以使用分布式文件系统来进行去中心化。