风险提示:理性看待区块链,提高风险意识!
EOS钱包开发:基于测试网络进行开发
首页 > 币界资讯 > 区块链知识 2018-11-15 10:31:00

目标

  1. 如何正确连接到测试网络
  2. 使用jungle创建我的第一个账号
  3. 在jungle索取EOS测试币
  4. 在项目中创建账号

前言

咱们的课程到目前已经完成基于本地网络的EOS钱包开发,有三个模块:钱包模块、账号模块、转账模块,另外也能使用eosjs、cleos等。但是基于测试网络会有一些坑和区别,下面我们一起来学习。

一、如何正确连接到测试网络

1. 常见错误

学习快的同学可能自己已经提前尝试连接到测试网络,但是会报错

{"code":0,"name":"exception","what":"unspecified","details":[{"message":"Unknown Endpoint","file":"http_plugin.cpp","line_number":298,"method":"handle_http_request"}]}

我们打开jungle网站,查看jungle测试网节点地址,教程在“深入浅出EOSJS:连接到主网、测试网、交易”章节中作了详细说明。我们还是选用第一个测试地址“http://jungle.cryptolions.io:38888”。

我们测试下为啥会报这样的错误

  • nodeos节点服务是没有问题的,我们能正常获取用户信息等。
  • cleos -u http://jungle.cryptolions.io:38888 get account lixulixulixu
  • 0A92324C-2B39-45A0-AA29-7C80068CE2EE
    • 那么就肯定是keosd服务不支持了,我们来访问下wallet的API,如下
    • cleos --wallet-url http://jungle.cryptolions.io:38888 --print-request wallet list
    • 16168EAB-DF82-4029-B2CD-DD8CBA40E3B4
    • 2.错误分析

      由此可见,jungle.cryptolions.io:38888测试节点上并没配置wallet的API插件,所以连接到测试网络中不支持wallet,但是支持wallet外的其它RPC连接。因为它作为一个公共的服务节点,是不可能帮助大家管理私钥的,那样会非常不安全,大家都会共用相同的钱包和私钥,除非它再为大家做一个用户系统,这就太没有必要了。

      因此,我们连接到测试网络的时候,需要自己搭建keosd服务用于管理钱包和私钥。将wallet服务连接到本地服务,而nodeos服务连接到测试网络。这样仅仅是依赖我们的本地钱包应用程序keosd来处理我们的私钥,而账号、交易等是连接到的测试网络,因此该钱包项目上线后会需要我们服务器提供keosd服务。

      3. 错误处理

      修改config/config.js文件中httpEndpoint和chainId如下

    • //测试网络
      eosconfig:{
          httpEndpoint:"http://jungle.cryptolions.io:18888",
          chainId: "038f4b0fc8ff18a4f0842a8f0564611f6e96e8535901dd45e43ac8691a1c4dca", 
          ......
      },
    • 而walletAddress地址不能修改,还是连接到的本地IP“http://127.0.0.1:8889”。现在只需启动keosd服务即可,nodeos可以停掉,然后启动NodeJS后台服务我们,查看前面创建的钱包“mywallet1”,如下图4B8F0807-39B8-47B8-A788-68428D9E894D可见该钱包中虽然还是拥有之前一样的私钥,但是所管理的账号为null。大家应该该记得前面的截图,在本地网络中该钱包的账号有哪些,如下97FD6D99-1DF2-4597-9E04-46B763AD5922
    • 二、使用jungle创建我的第一个账号

      我们已经知道在EOS区块链中创建账号是需要使用已有账号去创建,并需要购买和消耗一定网络资源。那么我们在测试网络中由谁帮我们创建第一个账号呢?下面我们通过jungle网站为我们创建第一个账号。

      第一步:

      我们打开jungle网站,在导航栏上有一个创建账号按钮是“Create Account”,点击它会出现如下的弹框

      748E8DB8-BB85-4ED7-8514-A9E8A68E7044

      注意账号名称在测试网络和主网中必须是12位,自己去创建一对公私钥作为owner与acitve权限的管理者。输入后点击按钮“Create”。

      第二步:

      然后会弹出如下的交易信息,说明已经创建成功。

      15D22BF1-686A-44AB-856F-6B9E4F9C9CB1

      可以看见eosio为该账号购买了网络资源:RAM、NET、CPU。具体说明将在下一章介绍。

      第三步:

      输出命令查看新创建的账号“lixutest1111”的信息

    • cleos -u http://jungle.cryptolions.io:18888 get account lixutest1111
    • 输出如下A4F016CE-DE1E-4AC6-AE2C-584EB45C0ED5说明已经创建成功,但是没有余额。第四步:将“lixutest1111”账号的私钥导入到“mywallet1”钱包中,将会查看到该账号。BF7F405C-1F39-4752-A1CD-8EC57BC3512D

      衍生

      很多人会使用eosio的私钥去控制账号,而每台电脑里eosio设置的私钥都是一样的,我们可以导入eosio的私钥到钱包,那样就可以有了它所控制的所有账号的控制权,还能找到有些账号有EOS测试币,哈哈。OK,那我们导入私钥“5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3”到“mywallet2”钱包中吧,因为里面的账号太多了。下面是我导入后的结果,我截取了前面部分的账号。

      9D245ED6-D6BE-40AD-B942-995478708D57

      三、索取EOS测试币

      索取EOS测试币是我们后面交易和购买资源不可缺少的资源。当然,这也离不开jungle网站的支持。

      第一步:

      我们打开jungle网站,在导航栏上有一个索取EOS的按钮是“Faucet”,点击它会出现如下的弹框

      F5167417-5581-4B4D-90DE-D2801363D6FD

      输入后点击按钮“Send Coins”。

      第二步:

      然后会弹出如下的交易信息,说明已经创建成功。

      2661A4F3-0A54-4B7D-B1CA-01E2029A21BA

      可以看见是eosio转出了100EOS到该账号,同时“lioninjungle”账号转来了100个JUNGLE代币。

      第三步:

      查看该账号的详情,将会查收到有100EOS和100JUNGLE。

      B0261A49-2609-49DA-9932-46C8DEB32A83

      四、在项目中创建账号

      在项目中创建账号的功能已经完成,之前是在本地网络,现在我们运行在测试网络中,看看会有什么区别。

      第一步:

      新建账号“lixutest1112”,使用“mywallet1”钱包中的任意一个公钥控制。

      80D1C4B4-354C-4E7B-892F-8748C92180F8

      第二步:

      可以看到“mywallet1”钱包中又多了一个账号“lixutest1112”,它的余额显示为0,但是“lixutest1111”的余额由100EOS变为了下面的79.4019EOS。

      9F20FC26-5344-464F-9C7B-2E8142489C5B

      为何少了20.5EOS呢,我们查看创建账号的代码,如下:

      可见我们在转账的时候给新账号买了NET和CPU和花费了10EOS,另外买了8192bytesRAM。所以一共扣掉了约20.5EOS。

      第三步:

      查看账号“lixutest1112”的网络资源,确实拥有了10个EOS抵押NET和10EOS抵押CPU,RAM有9.325Kib。

      99A77CDD-1861-4357-9BE5-E14D8DE7D7A9

      五、小结

      经过本章内容我们已经成功将钱包项目连接到了真实的测试网络,用于管理钱包私钥的服务是本地搭建的。经过测试我们的功能都已成功,下一章的内容将介绍如何购买网络资源。

      项目源码Github地址

      版权声明:博客中的文章版权归博主所有,未经授权禁止转载,转载请联系作者取得同意并注明出处。

      未经授权禁止转载、改编,转载请注明出处!

上一篇: 化繁为简自行搭建你的Fabric网络:不可或缺的配置文件
下一篇: 深入浅出讲解BANCOR算法
推荐专栏
web3首席知识博主
一位相信价值投资的币圈KOL。稳定盈利的缠论野生交易员 #BTC行情分析师 #价值投资 #链上数据分析
爱Web 3,爱生活,爱科技,爱炒币的老韭菜
热门币种
更多
币种
价格
24H涨跌幅
BTC比特币
¥264,723.74
37,091.22 USDT
+0.1%
ETH以太坊
¥14,416.22
2,019.90 USDT
-0.12%
USDT泰达币
¥7.20
1.01 USDT
0%
BNB币安币
¥1,625.40
227.74 USDT
+0.36%
XRP瑞波币
¥4.32
0.60460 USDT
+0.37%
USDC
¥7.14
1.00 USDT
+0.03%
SOLSolana
¥398.85
55.89 USDT
+1.54%
OKBOK币
¥398.61
55.85 USDT
-1.64%
ADA艾达币
¥2.68
0.37580 USDT
-1.16%
DOGE狗狗币
¥0.55160
0.07730 USDT
-1.52%
热搜币种
更多
币种
价格
24H涨跌幅
Terra Classic
¥0.00
9.402E-5 USDT
-18.95%
Gala
¥0.18
0.025374 USDT
-4.66%
dYdX
¥22.58
3.1918 USDT
-0.91%
比特股
¥0.05
0.006964 USDT
+4.28%
PancakeSwap
¥15.52
2.1936 USDT
-2.74%
Conflux
¥1.08
0.1524 USDT
-2.87%
Filecoin
¥31.45
4.4454 USDT
-0.69%
FTX Token
¥29.82
4.2155 USDT
+16.96%
Yield Guild Games
¥2.55
0.3608 USDT
-0.52%
Shiba Inu
¥0.00
8.14E-6 USDT
-2.51%
比特币
¥262,381.44
37091.22 USDT
+0.1%
比原链
¥0.07
0.010011 USDT
-4.38%
最新快讯
更多
汇丰、恒生、渣打、富邦华一四家外资银行入围首批“数字人民币”业务试点名单
2023-11-28 19:06:57
摩根大通和Apollo计划建立代币化“企业主网”
2023-11-28 19:03:57
Nansen2公测版本上线,新增链上数据异动、智能搜索等功能
2023-11-28 18:59:52
西班牙公民需在明年3月底前申报其海外平台上加密货币持仓
2023-11-28 18:53:43
Nansen2已公开测试
2023-11-28 18:53:38
dYdX基金会:主网启动以来超过1645万DYDX被质押
2023-11-28 18:52:07
NicCarter等比特币倡导者发文:比特币挖矿是清洁能源和平衡电网的关键工具
2023-11-28 18:47:58
下载币界网APP