MoonBeam是即将推出的Polkadot网络智能合同平台,目前正在积极开发中。MoonBeam使用衬底区块链开发框架构建,该框架提供了一套核心的以太兼容模块。
由于以太兼容性是MoonBeam的价值主张的核心,我认为快速演示一下我们所说的“以太兼容性”所指的功能类型会很有帮助。
本手册概述了使用MetaMask创建和使用自含式MoonBeam dev节点在MoonBeam帐户之间发送令牌的步骤。本指南中的步骤假设是基于Ubuntu18.04的操作系统。
注意:由于项目目前处于预阿尔法阶段,这些说明可能会更改。我会尽我最大努力使这篇文章保持最新。
MoonBeam是一个面向开发者的区块链,致力于提供与现有Etherum开发者工具和网络的兼容性。它通过提供完整的EVM实施、兼容Web3的API以及将MoonBeam连接到现有以太网的网桥来实现这一点。这允许开发人员部署现有的可靠智能合同和DAPP前端到MoonBeam,只需最少的更改。
月光也将是Polkadot网络上的一个副链。这意味着它将从Polkadot中继链获得共享安全性,并能够与连接到Polkadot的其他链集成(一旦Polkadot上提供该功能)。
您可以通过两种方式与MoonBeam交互:使用底层RPC端点,或者使用与Web3兼容的RPC端点。后一个端点当前从与底层RPC相同的RPC服务器提供服务。在本教程中,我们将使用Web3RPC端点与MoonBeam交互。
首先,使用--dev标志下载并构建一个将在开发人员模式下运行的MoonBeam节点。
注意:对于不熟悉底层的人,可以使用--dev标志在单节点开发人员配置中运行基于底层的节点进行测试。您可以在本衬底教程中了解更多关于--dev的信息。
本指南中的示例假定是基于Ubuntu18.04的环境,需要针对MacOS或Windows进行相应的调整。
按照该页面上的安装说明设置锈蚀、安装衬底并克隆Repo。以下是克隆操作的输出:
一旦克隆了所有需要的repos,就可以通过运行以下命令构建节点了:
初始构建将需要一段时间,具体取决于您的硬件。你应该计划30分钟。您可能会看到与evmv0.16.1相关的警告,并使用过时的项目`sc_service::AbstractService::spawn_essential_task`,在本指南中可以忽略这些警告。
然后,您需要使用以下命令在dev模式下运行该节点:
您应该会看到如下所示的输出,其中显示了正在生成的块:
接下来,从Chrome商店创建全新的默认MetaMask安装,您将在其中导入您的dev帐户:
在导入屏幕上,选择[私钥],粘贴上面列出的密钥:
您应该最终得到一个导入的“Account 2”,如下所示:
当您点击“保存”并退出网络设置屏幕时,MetaMask应该通过其Web3RPC连接到本地MoonBeam dev节点,并且您应该看到余额为123456.123 eth的MoonBeam dev帐户。
为简单起见,您将使用“在我的帐户之间传输”选项将您的dev帐户传输到安装时附带的默认MetaMask帐户。让我们转移100个令牌,并将所有其他设置保留为默认值:
提交后,您将看到事务处理处于“待定”状态,直到它得到确认,如下所示:
请注意,帐户2的余额已减去已发送的金额+燃气费。翻到帐户1,我们看到100个已发送的令牌已经到达:
备注:如果最终使用衬底清除链命令重置开发节点,则需要使用设置-&>高级-&>重置帐户重置您的MetaMask开发帐户。这将从您的帐户中清除交易历史记录并重置随机数。确保你不会抹去任何你想要保留的东西!
这显然是一个简单的示例,但它为您提供了如何开始使用MoonBeam以及如何尝试其Etherum兼容性功能的上下文。我们很想听听您按照本指南中的步骤操作的经验,或者您使用MoonBeam尝试其他基于Etherum的工具的经验。欢迎加入我们的月光暴动房间。我们很乐意听取您对月光的反馈,并回答您的任何问题。