01导语
上一期我们介绍了本体Python智能合约的合约执行API,本期我们将讨论如何通过NativeAPI来进行本体原生合约调用。原生合约调用最典型的功能就是合约转账,这也是整个智能合约最核心的部分。NativeAPI只有1个API。用法如下:
同时,使用Invoke函数需要内建的state函数辅助来封装参数,用法如下:
下面我们具体讲述一下这两个API的使用方法。在这之前,小伙伴们可以在本体智能合约开发工具SmartX中新建一个合约,跟着我们进行操作。跟以前的API讲解一样,在文章最后我们将给出这次讲解的所有源代码以及视频讲解。
去中心化视频网络Theta Network将于2021年第一季度推出NFT交易平台:1月5日消息,去中心化视频网络Theta Network发布2021年发展规划,将于2021年第一季度推出基于Theta区块链的NFT交易平台。[2021/1/5 16:29:20]
02NativeAPI使用方法
同样,使用这两个函数前需要引入。下面两条语句分别引入了这两个函数。
2.1本体原生合约列表
目前,本体可供使用的原生合约有六个。以下就是可以使用NativeAPI调用的原生合约列表:
在合约中,将合约地址转成bytearray形式传入Invoke即可。例如,需要调用ONTToken合约时,可以先将ONTToken合约对应的地址转成相应的bytearray形式,再进行相应的Invoke函数调用。在进行Invoke函数调用时,传入的参数分别为版本号,合约地址,调用的合约方法以及state函数封装的转账相关参数。这里特别要注意的一点是,在进行ONG的合约转账时,所填数量是实际数量的10^9倍。即,如果需要转10个ONG,那么数量需要填为10^10。而在采用ONTO或者Cyano等钱包转账时,所填数量即为转账数量。
动态 | LinkedIn联合创始人发布加密货币主题嘻哈说唱视频:9月5日,LinkedIn联合创始人Reid Hoffman发布了一段嘻哈说唱比赛视频,演员分别扮演了美国开国元勋之一的亚历山大·汉密尔顿和中本聪(Satoshi Nakamoto)并进行了对峙。该视频中出现了来自加密行业中的数十个先驱,例如LTC创始人Charlie Lee、Zcash(ZEC)联合创始人Zooko Wilcox-O'Hearn和Hoffman本人等。Hoffman表示,他希望视频能让更多人谈论加密货币及其在全球商业中不断发展的角色。[2019/9/6]
2.2转账合约代码
动态 | 四十余家主流媒体等成立“音视频发展联盟” 蚂蚁金服等提供区块链版权保护:据人民网报道,8月7日“融合 聚变 共赢——全媒体生态发展研讨会”在京举行,会上“音视频发展联盟”和“新媒体版权联盟技术委员会”正式成立。中国网、国际在线、中青网、中国经济网、中国新闻网、中工网、中青在线、环球网、正义网、浙江在线、大河网、长城新媒体集团、中国汽车报、华策影视、森宇文化等四十余家主流媒体及影视版权机构第一批加入“音视频发展联盟”。蚂蚁金服、亿幕信息、唔哩头条成为“技术委员会”第一批核心成员单位,分别为联盟提供区块链版权保护、版权平台技术支撑和运营变现等服务。[2019/8/9]
下面我们给出一个完整的示例,演示如何使用Python语言来实现ONT以及ONG的转账功能。下述代码以传入的转出账户和转入地址参数类型为string为例实现该合约。另外,也可以以address为类型的账户参数进行传递,从而达到节省调用Gas费用的目的。该合约代码流程如下:
定义合约地址变量contract_address_ONT,contract_address_ONG;
将转出地址和转入地址从base58格式转成bytearray格式;
验签,确认转出地址与合约调用地址为同一地址;
state函数封装转账相关参数;
Invoke函数调用ONTToken和ONGToken原生合约转账;
通过返回res判断转账是否成功。返回值b''为成功,成功则推送事件“transfersucceed”。
03SmartX实践
接下来,小伙伴们可以在SmartX上进行操作,动手编译和运行上述提供的合约示例代码。具体步骤如下:1.编译合约。首先在SmartX中新建一个合约项目,并将代码放入该项目中进行编译。
2.部署合约。部署过程中如需申请测试币,申请地址为https://developer.ont.io/applyOng。部署结果示意如下:
3.执行转账。执行transfer函数进行转账前需要进行相关参数设置。在该示例中,需要填入发送地址、接收地址、代转账的ONT数量以及ONG数量:
4.转账成功。当转帐参数设置正确时,执行transfer函数将转账成功。上面所填的接收地址中将显示出收到的代币:
04总结
本次技术视点中我们介绍了本体区块链的NativeAPI,开发者可以使用NativeAPI来进行本体原生合约调用。原生合约调用最典型的功能就是合约转账,这也是整个智能合约最核心的部分。在下一期技术视点中,我们将介绍UpgradeAPI,探讨如何在本体智能合约中进行合约升级。本期讲述的所有语法部分我们提供了中文视频,小伙伴们可以观看学习。
尊敬的用户:BiKi平台即将开放SEA的充值、提现,并开放SEA/USDT交易对,具体时间如下:1、开放充值时间:9月23日11:00;2、开放提现时间:9月23日11:00;3、开放交易时间:.
尊敬的币团用户: 为了尊重市场交易需求,在收到大量的用户反馈和建议后,币团决定在今日开启自主申请上币通道,表单提交成功后正常将于3个工作内予以反馈.
尊敬的用户: NP5首发上线,重磅开启合伙人专属100万NP56.6折抢购活动。活动将于9月20日11:00—13:00进行,用户可点击首页左上角BiKiLab查看参与活动.
由金色财经主办,B-LABS、大项区块链科技、科技寺协办的金色沙龙第39期杭州站“区块链落地场景与应用现状”将于9月26日13:00在杭州市江干区解放东路29号迪凯银座6层举办.
文章来源:Medium作者:HenryHe近期,中国人民银行计划推出一种由央行支持的数字货币。作者认为中国正在打造一个全新的、完全开放的和现金支付一样的公共支付基础设施.
尊敬的用户: 安全是币钻的中枢,而优质的数字资产是我们安全保障的前提和根本。以优质数字资产交易立身的币钻,秉承为用户提供极致体验的原则,持续跟踪观察项目,并根据存在或潜在的隐患大小,对项目进行警.