BTCV高分资讯 > 数字货币 > 开发者进来:教你在公共链中创造DApp_btcv-高分资讯

开发者进来:教你在公共链中创造DApp_btcv-高分资讯

作者:高分资讯来源:高分资讯 数字货币 2020年07月31日

从这篇文章开始,学习在Conflux上开发一个完整的DApp,包括前端和智能合同。

撰文:黑曜石实验室

冲突DApp开发教程将使用冲突工作室在俄刻阿诺斯网络下开发一个简单的令牌应用硬币。

通过本开发教程,您将学习如何编写和调用Conflux智能合同,如何配置智能合同的支付,以及如何使用Web前端项目与智能合同进行交互,从而实现包括前端和智能合同在内的完整DApp。

如果您在阅读教程时遇到任何问题,请在问题中给我们反馈。

准备好安装集成开发环境。请在GitHub下载页面下载Conflux工作室。目前,Conflux工作室支持macOS和Linux系统。请根据系统下载相应的版本。

在Conlux工作室正确安装并初始启动后,Conlux工作室将显示一个欢迎页面,并根据提示完成Docker、Conflux Node和Conflux块菌的下载、安装和启动。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

完成所有安装步骤后,您需要创建密钥对来完成后续的合同部署和调用。

在Conflux Studio的任何界面中,单击应用程序左下角的密钥图标,打开密钥管理器。单击创建按钮打开新密钥对的弹出窗口,输入密钥对的名称,然后单击保存按钮。完成后,您将在密钥管理器中看到刚刚生成的密钥对的地址。密钥对由一个私钥和一个公钥组成,公钥在智能合同中通常被称为地址。

要导出私钥,请点按每个地址后面的眼睛按钮,打开用于查看私钥的弹出窗口,弹出窗口显示地址和私钥。在后续教程中,您需要通过管理器导出私钥。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

为了成功完成本教程,您首先需要创建三个密钥对:

Minter_key用于硬币合同部署的签名,这是本教程中最常用的密钥对。接收方密钥用于接收和传送硬币合同。发起人_密钥将在以后转账时用于硬币合同支付功能,并在以后引入支付功能时用于连接Conflux网络。单击顶部网络选项卡上的倒三角形打开下拉菜单,然后单击选择要切换的俄刻阿诺斯网络。

切换后,您可以在主页上看到当前网络是oceanus。左侧页面包含当前网络的节点网址、链标识和TPS信息,右侧页面包含当前网络块的信息。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

要申请CFX测试,点击顶部的浏览器选项卡打开块浏览器,在地址栏中粘贴密钥对地址,您可以在左边看到当前地址的CFX余额信息。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

在区块链世界,人们通常称之为申请测试令牌水龙头的方式。目前,俄刻阿诺斯网络下水龙头使用的令牌是100 CFX。

有两种方法可以获得CFX:

输入地址,然后点击地址栏右侧的水龙头按钮。Conflux Studio将自动为该地址申请CFX。您也可以直接在浏览器中输入

https://wallet.confluxscan.io/faucet/dev/ask?地址={address}

申请CFX硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

使用上述方法在Conflux工作室中为明特密钥和应答者密钥申请CFX令牌。完成申请后,这两个帐户的余额将从0 CFX更新为100 CFX。

当前余额信息为:

minter _key balance 100 CFXReceiver _ key balance 0 CFXS响应者_ key balance 100 CFX智能合同创建项目单击左上角的“项目”选项卡切换到项目列表页面,单击页面上的“新建”按钮打开项目创建窗口,输入项目名称并选择硬币模板,然后单击“创建项目”完成项目创建。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

合同代码硬币合同是一个简单的代币合同,其中:

额外的令牌可以通过mint方法发行,一定数量的令牌可以通过send方法转移给其他用户。同时,本次转让的信息将记录在活动中。指定帐户地址的令牌余额可以通过balanceoff方法找到,支付白名单可以通过add_privilege方法添加到合同中。支付白名单硬核 | 手把手教你从零开始在 Conflux  上开发 DApp可以通过remove_privilege方法删除

Conflux智能契约是用Solidity语言开发的,在目录中打开契约/Coin.sol文件查看项目的核心代码。

编译和部署合同单击工具栏中的“编译”按钮来编译合同,编译结果将保存在build/Coin.json文件中。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

在部署合同之前,必须确认在资源管理器中选择了用于合同部署的地址,Conflux Studio将使用该地址来签署部署合同(选择方法是在资源管理器的地址栏中输入地址)。在合同代码的构造函数中,minter被指定为msg.sender,这是浏览器选择的地址。

这里我们选择minter_key作为部署合同的签名者。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

单击工具栏中的部署按钮进行部署。部署完成后,部署结果将在部署的JSON文件中找到。在该文件中,可以在contractCreated中找到当前合同部署的地址,稍后将使用contract_addr来表示该合同地址。

硬核 | 手把手教你从零开始在 Conflux  上开发 DApp

总之,在本开发教程中,我们学习了如何使用Conflux工作室来完成一个完整的硬币DApp开发,包括:

使用密钥对管理器创建帐户并导出帐户私钥以切换俄刻阿诺斯网络,检查网络信息帐户以应用CFX令牌创建、编译和部署项目分析硬币合同代码,学习如何编写合同读写方法和事件。使用合同浏览器进行硬币合同令牌的发行、转账、余额查询和事件设置。将私钥导入Conflux门户并连接前端项目。在前端项目中调用硬币合同令牌发放、转账、余额查询和事件分析前端项目代码。了解如何连接到网络并通过Conflux Portal和Conflux JavaScript SDK实现交易。这篇文章是摘录,完整的教程可以在这里找到。

来源链接:github.com

标签: bitcoin vault