【EOS】2.2 发行Token,转移Token
1.获取合约代码:官方代码
git clone https://github.com/EOSIO/eosio.contracts --branch v1.4.0 --single-branch
里面包含多个合约,这里只用一个合约,那就是:eosio.token
进入到eosio.token文件夹:cd eosio.contracts/eosio.token
2.为合约创建账户
cleos create account eosio eosio.token EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV`
这个命令里,eosio
是已经存在的账号,后面的key
是用来开发的key
,这个命令的目的是为了eosio.token
合约创建一个账户。
输出结果是:
executed transaction: e53647dfb6c6200b666c8728cc7b6a2c0ddc5feaea8c8b376649e533eb569377 200 bytes 366 us
# eosio <= eosio::newaccount {"creator":"eosio","name":"eosio.token","owner":{"threshold":1,"keys":[{"key":"EOS6MRyAjQq8ud7hVNYcf...
warning: transaction executed locally, but may not be confirmed by the network yet ]
3.编译合约
eosio-cpp -I include -o eosio.token.wasm src/eosio.token.cpp --abigen
4.部署合约:
cleos set contract eosio.token /Users/xxx/codes/EOS-Dev/contracts/eosio.contracts/eosio.token --abi eosio.token.abi -p eosio.token@active
输出结果:
Reading WASM from /Users/xxx/codes/EOS-Dev/contracts/eosio.contracts/eosio.token/eosio.token.wasm...
Publishing contract...
executed transaction: dae4b042c016b5addafbf222cef97cef8910c90db70e0b81718722f28f32df3e 9712 bytes 2408 us
# eosio <= eosio::setcode {"account":"eosio.token","vmtype":0,"vmversion":0,"code":"0061736d0100000001aa011c60037f7e7f0060047f...
# eosio <= eosio::setabi {"account":"eosio.token","abi":"0e656f73696f3a3a6162692f312e300008076163636f756e7400010762616c616e63...
warning: transaction executed locally, but may not be confirmed by the network yet ]
部署完毕,就可以和合约进行交互了。
5.向合约提交指令–发行代币:
cleos push action eosio.token create '["eosio", "1000000000.0000 SYS"]' -p eosio.token@active
输出结果:
executed transaction: f4fa506ce9c7d6317669c93d87be55ed2c9a9ce941612a0548110ec11cab7f2f 120 bytes 434 us
# eosio.token <= eosio.token::create {"issuer":"eosio","maximum_supply":"1000000000.0000 SYS"}
warning: transaction executed locally, but may not be confirmed by the network yet ]
和下面这个命令效果一样:
cleos push action eosio.token create '{"issuer":"eosio", "maximum_supply":"1000000000.0000 SYS"}' -p eosio.token@active
这里是显式说明了参数的含义,发行者账户是谁,以及最大发行量是多少。
6.向其他账户定向发行代币
cleos push action eosio.token issue '[ "alice", "100.0000 SYS", "memo" ]' -p eosio@active
向Alice定向发行代币~~
输出:
executed transaction: fe3e0bc1b607345c6648d0b8ee8f0510eb532b2a3ca5b4aaab785cf23d28ab6e 128 bytes 591 us
# eosio.token <= eosio.token::issue {"to":"alice","quantity":"100.0000 SYS","memo":"memo"}
# eosio.token <= eosio.token::transfer {"from":"eosio","to":"alice","quantity":"100.0000 SYS","memo":"memo"}
# eosio <= eosio.token::transfer {"from":"eosio","to":"alice","quantity":"100.0000 SYS","memo":"memo"}
# alice <= eosio.token::transfer {"from":"eosio","to":"alice","quantity":"100.0000 SYS","memo":"memo"}
6.转移代币
cleos push action eosio.token transfer '[ "alice", "bob", "25.0000 SYS", "m" ]' -p alice@active
这里主要是想说转移命令,是alice
向bob
转币,所以用alice
的账户权限进行签名。
executed transaction: 6f3c329dac8248c2cd5ebc13536bc6300b2531852ea617807daa62b1c5f7e036 128 bytes 511 us
# eosio.token <= eosio.token::transfer {"from":"alice","to":"bob","quantity":"25.0000 SYS","memo":"m"}
# alice <= eosio.token::transfer {"from":"alice","to":"bob","quantity":"25.0000 SYS","memo":"m"}
# bob <= eosio.token::transfer {"from":"alice","to":"bob","quantity":"25.0000 SYS","memo":"m"}
查看bob是否已经收到代币,使用
cleos get currency balance eosio.token bob SYS
这个命令的参数依次是:
- 合约名
- 账户名
- 代币名
解释起来就是,查看eosio.token
合约上的bob
账户里的SYS
代币的余额,这个查看是人人可查,公开的,无需任何权限。
输出结果:
25.0000 SYS
参考链接:
https://developers.eos.io/eosio-home/docs/token-contract
END.
【EOS】2.2 发行Token,转移Token相关推荐
- 数字货币 BCH 使用SLP创建转移token (Electron-Cash 3.4.5安装使用 )
序 BCH上的token协议SLP(SimpleLedger Protocol)最近获得了较大的发展,本文将手把手教你如何使用SLP创建并且转移token 安装Electron-Cash-SLP钱包 ...
- 10《区块链财富指北》DAPP篇(2):从钱包上调用合约发行通证(Token)。
DAPP(2):从钱包上调用合约发行通证(Token). <区块链财富指北>系列文章由NOCY.COM策划,肖南飞主笔撰写. 技术选型基于BOScore公链,旨在以有趣易懂的方式传播普及区 ...
- 区块链DApp从零开始学 (二) | 超详细 DApp创建 | 发行代币token | 宠物领养
初学记录 · 欢迎交流 区块链DApp从零开始学 (一) | DApp抓包 区块链DApp从零开始学 (二) | 超详细 DApp创建 | 发行代币token |宠物领养 区块链知识 (一) | 实例 ...
- Token及Token经济
一.Token 1.1 通证有三个要素 1.2 通证和区块链的结合 二.Token Economy 2.1 Token 价值的体现 2.2 区块链产业发展的三条不同路线 2.3 通证经济的简单理解 三 ...
- 简单介绍vue获取token实现token登录的示例代码
最近新做了个vue项目,正好项目中有登录部分,本文就详细的介绍一下登录部分的实现,文中通过示例代码介绍的非常详细,感兴趣的小伙伴们可以参考一下 使用token做登录验证的思路大致如下: 1.在第一次登 ...
- python token 访问控制_python 产生token及token验证
1.前言 最近在做微信公众号开发在进行网页授权时,微信需要用户自己在授权url中带上一个类似token的state的参数,以防止跨站攻击. 在经过再三思考之后,自己试着实现一个产生token和验证to ...
- 【解析】Token to Token Vision Transformer
Vision Transformer 的提出颠覆了我们以往对图像处理的方式,也开阔了Transformer 在CV方向上的潜力,但其有一些缺点,如需要 超大型数据集(JFT)预训练,才能达到现在CNN ...
- python token_python 产生token及token验证的方法
1.前言 最近在做微信公众号开发在进行网页授权时,微信需要用户自己在授权url中带上一个类似token的state的参数,以防止跨站攻击. 在经过再三思考之后,自己试着实现一个产生token和验证to ...
- Retrofit 通过刷新头部Token解决token过期
需求分析: 使用token来维持用户登陆状态是很常见的,但应当明确后台设置的token也都是有一定期限的,假如说是7天,那么我们的用户信息的获取必然是和token相绑定的,所以不可避免的我们的Andr ...
最新文章
- 架构设计|异步请求如何同步处理?
- 一文看懂国产最大深度学习平台上新,国内率先加持量子机器学习
- 解析TOMCAT框架 .
- 跪求解,oc内存回收问题
- 为什么阿里巴巴建议集合初始化时,指定集合容量大小?
- blongsTo 用法
- 做好以下四点,拒做 “ 空心 ” 程序员 | CSDN 博文精选
- 计算机学硕缩招,专硕扩招、学硕缩招!又有院校初试科目改了!本周这些院校发布最新消息!...
- 韦东山Linux嵌入式学习——硬件复习
- Mobilenet——深度可分离卷积
- 计算机具有逻辑思维,逻辑思维能力
- 图的遍历详解(广度优先和深度优先)
- surface屏幕自动调节亮度无法关闭
- 真正的爱情是日久生情
- 焊接技巧 -- 拖焊
- python画circos图_手把手教你画Circos图
- POSCMS 系统缓存设置
- 李德毅:未来交通——自动驾驶与智能网联
- 如何在Tanzu Cluster中使用vSphere with Tanzu内置容器注册表
- 小计Tomcat的调优思路
热门文章
- 【华为OJ】按单词将句子逆序
- element tree不刷新视图_随手“一片”SCI,Qiime2扩增子处理流程确定不了解一下?(一)...
- 破解sourceInsight4
- java获取动态天气api,java调用中国天气网api获得天气预报信息
- angular 点菜_JavaScript实现的select点菜功能示例
- 病毒传播数学建模matlab分析,数学建模MATLAB之分析法(一)
- serialize java_java serialize 浅谈
- 无限火力挤爆服务器,LOL:无限火力出炉,众多云玩家宣布回归!服务器出现爆满情况...
- python字符串追加字符_Python字符串追加
- android表情面板_Android Q:应用内设置面板