18910140161

以太坊智能合约开发Hello World示例程序

顺晟科技

2021-06-16 10:46:28

204

简介

以太坊(以太博物馆)是一提供个智能合约(智能合同)功能的公共区块链(区块链)平台。本文介绍了一个简单的以太坊智能合约的开发过程。

开发环境

在以太坊上开发应用,首先需要安装其客户端,本文使用基于去语言的Geth,其官网为https://github.com/ethereum/go-ethereum.

在命令行环境中输入以下命令,连接到以太坊测试网络

geth - testnet - fast - cache=512控制台

这里写图片描述

第二步

在Geth提示符下输入以下代码,创建一个用户并设置密码

personal.newAccount()

这里写图片描述

第三步

在Geth提示符下输入以下代码,确认新用户的账户余额为0, 并开始"挖矿"(地雷)

eth.getBalance(eth.accounts[0])

miner.start()

2

这里写图片描述

第四步

新开一个命令行窗口并输入以下命令,将这个窗口连接到正在挖矿的窗口

geth attach

这里写图片描述

第五步

在Geth提示符下输入以下代码,确认新用户的账户余额有所增长

eth.getBalance(eth.accounts[0])

这里写图片描述

第六步

使用智能合约的在线编译器https://ethereum.github.io/browser-solidity/编译以下代码

合同编译

{

地址创建者;

字符串问候语;

函数hello world(string _问候语)公共

{

creator=msg.sender

问候语=_问候语;

}

函数问候()返回常量(字符串)

{

回复问候;

}

函数设置问候语(字符串_问候语)

{

问候语=_问候语;

}

/**********

标准kill()函数来回收资金

**********/

函数kill()

{

if (msg.sender==creator)

自杀(创作者);//终止此合同,并将剩余资金发送回创建者

}

}

2

3

5

6

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

这里写图片描述

第七步

编译器生成的代码如下

var _ helling=/* var类型的字符串在这里*/;

var helloworldcontrol=web 3。eth。contract([{'constant':false,' inputs':[],' name':'kill ',' outputs':[],' payable':false,' type':'function'},{ ' constant ' : false,' inputs ' :[{ ' name ' 3: ' _ new helling ',' type ' 3: ' string ' }),' name

你好世界=你好世界控制。新(

_问候语,

{

from: web3.eth.accounts[0],

数据: ' 606060405260405161044 e 38038061044 e 833981016040528080518201919060200150505050505 b 3360006006101000 a 81548173 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff

gas: 4700000

},函数(e,合同){

console.log(e,contract);

if (typeof contract.address!=='undefined') {

控制台日志('合同被挖掘!地址: '合同。地址“事务哈希:”合同。事务散列);

}

})

2

3

5

6

8

9

10

11

12

13

14

设置显示的字符串以及减少费用(气体)

var _ Hello=' Hello World

gas: 300000

2

第九步

将修改完的代码复制到第四步的窗口中,如果出现

错误:帐户被锁定未定义

错误的话,则使用

私人的。解锁帐户(eth。帐户[0],'密码')

命令将用户解锁。

这里写图片描述

第十步

等候一段时间之后,geth窗口就会出现合同布雷!地址.表明合约代码发布成功

这里写图片描述

第十一步

使用helloworld.greet()命令来运行该合约

这里写图片描述

总结

本文介绍了一个简单的以太坊智能合约的开发过程。

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航