目前以太坊的编程语言Solidity还是非常基础。Tron也使用Solidity,因此具有相同的限制。
目前,Solidity将智能合约简化为仅存储数值并进行一些基本的数学运算。 并且大多数智能逻辑都写在智能合约之外:在DAPP或服务器中。
#TRON中异步调用的两种情况是什么?
-
外部调用...到数据库,Web服务,(分布式)文件系统,邮件服务,到NodeJS oracle以克服Solidity的限制等。
-
自动回调...到合约本身调用代码(例如股息支付)。
为了实现这两个场景,我们需要进行TRON扩展。这是如何做到的:
步骤1:下载客户端库
输入下面链接,进行客户端库下载,
https://github.com/CaptainJavaScript/Tron
步骤2:创建智能合约
您可以复用位于客户端库中的HelloSeaman_v1.sol示例。只需从usingCaptainJSAtTron_v2扩展你的合同,整个魔法就会开始发生:
要在TRON中实现异步调用,只需使用Run-method执行NodeJS代码,或调用Callback方法进行简单回调。
步骤3:调用TronWeb的智能合约
将合同部署到SHASTA后,从GitHub存储库编辑Test-Shasta-public.js文件,
-
添加您的私钥(第6行)
-
更改合同的地址(第11行) - 否则你将调用我的演示合同地址
-
在第一次运行中调用SetCaptainsAddress()
调用完成。SHASTA还是值得我们去关注的。
本文转载公众号:区块链研究实验室,专注区块链技术,产品社群,经济模型等全方位的知识体系输出,为大家带来不一样的社群学习体验。欢迎联系作者微信加入社群:csschan1120