在eos测试链上开发 eos 合约

在eos测试链上开发 eos 合约

由于自建 eos 私有链,需要对 eos 比较熟悉,否则会有比较多的问题

eos network jungle

jungle 是 eos 其中一条测试链,这里我们选用 https://monitor.jungletestnet.io 作为我们的水龙头。

js4eos 是一款比较易用的 eos 合约开发工具。

创建钱包

js4eos wallet create

请记下钱包的密码

选择 jungle 网络

PS: 20181124 jungle 升级到 jungle2.0
jungle1.0 将不会再被支持,https://jungle.bloks.io 上的数据已经切换到 jungle2.0

js4eos config  set --chainid=e70aaab8997e1dfce58fbfac80cbbb8fecec7b99cf982a9444273cbc64c41473 --url=http://jungle2.cryptolions.io:80 --network jungle

创建账号并激活

离线生成 公私钥,并通过 https://monitor.jungletestnet.io/#account 创建账户,使用 https://monitor.jungletestnet.io/#faucet 获取 eos 资产。注意,这里使用的 jungle2 测试网络。

生成账户的公私钥

PS: 公私钥是离线生成的,不区分主链,测试链

 js4eos create key --to-console

请妥善保管

{
    "privateKey": "5J***",
    "publicKey": "EOS4xWTNK4ySE57Am86fH5pbFhyDhTGkrHDiWgNoNnYTabCqBkhky"
}

导入私钥到钱包

js4eos wallet import 5J***

查看导入的私钥

js4eos wallet keys

前往 https://monitor.jungletestnet.io/#account 创建账户

公私钥是离线生成的,但是 eos 账户需要在链上创建,前往 https://monitor.jungletestnet.io/#account (水龙头)创建账户即可。

其中 Account name 是你需要的账户名,而 Owner Public KeyActive Public Key 都可以设置为自己的公钥。这里 Account name 设置为 qyvlikeosdev

如下图示:

在这里插入图片描述

通过水龙头创建的 eos 账户,拥有一定的 cpu 和内存资源。但是并没有 eos 资产。前往 https://monitor.jungletestnet.io/#faucet 获取 eos 资产(需要梯子,每 6 小时可以拿一次)。

在这里插入图片描述

https://jungle.bloks.io/account/qyvlikdev111

给账号授权

当合约需要内联调用 eosio.tokenaction 时,需要设置一些权限。

模板如下:

js4eos set account permission 你的账户名 active '{"threshold": 1,"keys": [{"key": "你的公钥","weight": 1}],"accounts": [{"permission":{"actor":"你的账户名","permission":"eosio.code"},"weight":1}]}' owner -p 你的账户名

实际命令如下:

js4eos set account permission qyvlikeosdev active '{"threshold": 1,"keys": [{"key": "EOS4xWTNK4ySE57Am86fH5pbFhyDhTGkrHDiWgNoNnYTabCqBkhky","weight": 1}],"accounts": [{"permission":{"actor":"qyvlikeosdev","permission":"eosio.code"},"weight":1}]}' owner -p qyvlikeosdev

购买 ram

js4eos system buyram qyvlikeosdev qyvlikeosdev "10.0000 EOS"

编译&部署合约

我们约定 xxx 是合约目录。xxx 目录内,有 xxx.cppxxx.cpp 是我们的 eos 智能合约的代码。

编译:

cd xxx
js4eos compile -o xxx.wasm xxx.cpp
js4eos compile -g xxx.abi xxx.cpp

部署(部署合约前,需要解锁钱包 js4eos wallet unlock):

cd ..
js4eos set contract qyvlikeosdev xxx

接下来就可以通过 js4eos 调用合约了。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值