区块链研究实验室|基于solidity智能合约在tron网络中进行异步调用

目前以太坊的编程语言Solidity还是非常基础。Tron也使用Solidity,因此具有相同的限制。

目前,Solidity将智能合约简化为仅存储数值并进行一些基本的数学运算。 并且大多数智能逻辑都写在智能合约之外:在DAPP或服务器中。

#TRON中异步调用的两种情况是什么?

  • 外部调用...到数据库,Web服务,(分布式)文件系统,邮件服务,到NodeJS oracle以克服Solidity的限制等。

  • 自动回调...到合约本身调用代码(例如股息支付)。

为了实现这两个场景,我们需要进行TRON扩展。这是如何做到的:

步骤1:下载客户端库

输入下面链接,进行客户端库下载,

https://github.com/CaptainJavaScript/Tron

步骤2:创建智能合约

您可以复用位于客户端库中的HelloSeaman_v1.sol示例。只需从usingCaptainJSAtTron_v2扩展你的合同,整个魔法就会开始发生:

区块链研究实验室|基于solidity智能合约在tron网络中进行异步调用_第1张图片

要在TRON中实现异步调用,只需使用Run-method执行NodeJS代码,或调用Callback方法进行简单回调。 

区块链研究实验室|基于solidity智能合约在tron网络中进行异步调用_第2张图片

 

步骤3:调用TronWeb的智能合约

将合同部署到SHASTA后,从GitHub存储库编辑Test-Shasta-public.js文件,

  1. 添加您的私钥(第6行)

  2. 更改合同的地址(第11行) - 否则你将调用我的演示合同地址

  3. 在第一次运行中调用SetCaptainsAddress()

区块链研究实验室|基于solidity智能合约在tron网络中进行异步调用_第3张图片

 

区块链研究实验室|基于solidity智能合约在tron网络中进行异步调用_第4张图片

 调用完成。SHASTA还是值得我们去关注的。

本文转载公众号:区块链研究实验室,专注区块链技术,产品社群,经济模型等全方位的知识体系输出,为大家带来不一样的社群学习体验。欢迎联系作者微信加入社群:csschan1120  

你可能感兴趣的:(区块链,智能合约,以太坊)