99久久国产亚洲高清观看2020_国产免费成人_四虎国产精品永久地址入口_国产精品免费一区二区久久夜色_美国超碰在线_男人天堂tv

您的位置:首頁 > 區塊鏈 >

Solidity簡化智能合約 多數邏輯都寫在在DAPP或服務器中

2019-07-01 15:42:06 來源: 區塊鏈研究實驗室

目前以太坊的編程語言Solidity還是非常基礎。Tron也使用Solidity,因此具有相同的限制。目前,Solidity將智能合約簡化為僅存儲數值并進行一

目前以太坊的編程語言Solidity還是非常基礎。Tron也使用Solidity,因此具有相同的限制。

目前,Solidity將智能合約簡化為僅存儲數值并進行一些基本的數學運算。 并且大多數智能邏輯都寫在智能合約之外:在DAPP或服務器中。

#TRON中異步調用的兩種情況是什么?

· 外部調用...到數據庫,Web服務,(分布式)文件系統,郵件服務,到NodeJS oracle以克服Solidity的限制等。

· 自動回調...到合約本身調用代碼(例如股息支付)。

為了實現這兩個場景,我們需要進行TRON擴展。這是如何做到的:

步驟1:下載客戶端庫

輸入下面鏈接,進行客戶端庫下載,

https://github.com/CaptainJavaScript/Tron

步驟2:創建智能合約

您可以復用位于客戶端庫中的HelloSeaman_v1.sol示例。只需從usingCaptainJSAtTron_v2擴展你的合同,整個魔法就會開始發生:

pragma solidity ^0.4.25;

import "./usingCaptainJSAtTron_v2.sol";

contract HelloSeaman_v1 is usingCaptainJSAtTron_v2 {

constructor () public { }

...

}

要在TRON中實現異步調用,只需使用Run-method執行NodeJS代碼,或調用Callback方法進行簡單回調。

...

uint constant EXAMPLE1 = 1;

uint constant EXAMPLE2 = 2;

function Demo() public payable

{

Run(EXAMPLE1, "json:https://api.kraken.com/0/public/Ticker?

pair=ETHUSD",

"result.XETHZUSD.a[0]", "-", 2, 5000);

Callback(EXAMPLE2, 20, 100000);

}

function CaptainsResult(uint UniqueIdentifier,

string Result, bool IsError) external onlyCaptainsOrdersAllowed {

emit LogEvent(

concat("CaptainsResult received with UID = ",

uintToString(UniqueIdentifier), " and a result of ", Result)

);

}

function CaptainsCallback(uint UniqueIdentifier) external

onlyCaptainsOrdersAllowed {

emit LogEvent(

concat("Callback received with UID = ", uintToString(

UniqueIdentifier))

);

}

步驟3:調用TronWeb的智能合約

將合同部署到SHASTA后,從GitHub存儲庫編輯Test-Shasta-public.js文件,

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

2. 更改合同的地址(第11行) - 否則你將調用我的演示合同地址

3. 在第一次運行中調用SetCaptainsAddress()

const TronWeb = require('tronweb');

const SHASTA = 'https://api.shasta.trongrid.io';

const tronWeb = new TronWeb(

SHASTA, SHASTA, SHASTA,

'<your private="" key="" goes="" here'

);

const OwnersWalletAtSHASTA = "";

...

const HelloSeaman_v1AtSHASTA = "TB4TEvEnbjM66ici2QjP92rpYkJWJPJajS";

...

function RunTest() {

var Budget = ToTRX(0.01);

var Transfer = ToTRX(0.5);

console.log("RunTest / Budget = " + Budget + ", Transfer Value =

" + Transfer);

SeamansContract.Run(1, "math:log2(16)", "", "mathjs", 1, Budget).

send({shouldPollResponse: true, callValue: Transfer}).catch(function(

err) { console.log(err); }).then( console.log("RUN EXECUTED") );

}

function SetCaptainsAddress() {

console.log("SetCaptainsAddress to " + CaptainsAddressAtSHASTAhex

);

SeamansContract.SetCaptainsAddress(CaptainsAddressAtSHASTAhex).

send({shouldPollResponse: true, callValue: 0}).catch(function(err)

{ console.log(err); }).then( console.log("SETCAPTAINSADDRESS EXECUTED"

) );

}

function Demo() {

console.log("Demo run...");

SeamansContract.Demo().send({shouldPollResponse: true, callValue:

ToTRX(1)}).catch(function(err) { console.log(err); }).then

( console.log("DEMO EXECUTED") );

}

async function Go() {

...

SeamansContract = await tronWeb.contract().at(HelloSeaman_v1AtSHASTA

);

SetCaptainsAddress();

// RunTest();

// Demo();

}

Go();

調用完成。SHASTA還是值得我們去關注的。(鏈三豐)

關鍵詞: Solidity 智能合約 DAPP

精選 導讀

募資55億港元萬物云啟動招股 預計9月29日登陸港交所主板

萬科9月19日早間公告,萬物云當日啟動招股,預計發行價介乎每股47 1港元至52 7港元,預計9月29日登陸港交所主板。按發行1 167億股計算,萬

發布時間: 2022-09-20 10:39
管理   2022-09-20

公募基金二季度持股情況曝光 隱形重倉股多為高端制造業

隨著半年報披露收官,公募基金二季度持股情況曝光。截至今年二季度末,公募基金全市場基金總數為9794只,資產凈值為269454 75億元,同比上

發布時間: 2022-09-02 10:45
資訊   2022-09-02

又有上市公司宣布變賣房產 上市公司粉飾財報動作不斷

再有上市公司宣布變賣房產。四川長虹25日稱,擬以1 66億元的轉讓底價掛牌出售31套房產。今年以來,A股公司出售房產不斷。根據記者不完全統

發布時間: 2022-08-26 09:44
資訊   2022-08-26

16天12連板大港股份回復深交所關注函 股份繼續沖高

回復交易所關注函后,大港股份繼續沖高。8月11日大港股份高開,隨后震蕩走高,接近收盤時觸及漲停,報20 2元 股。值得一提的是,在7月21日

發布時間: 2022-08-12 09:56
資訊   2022-08-12

萬家基金再添第二大股東 中泰證券擬受讓11%基金股權

7月13日,中泰證券發布公告,擬受讓齊河眾鑫投資有限公司(以下簡稱齊河眾鑫)所持有的萬家基金11%的股權,交易雙方共同確定本次交易的標的資

發布時間: 2022-07-14 09:39
管理   2022-07-14

央行連續7日每天30億元逆回購 對債市影響如何?

央行12日再次開展了30億元逆回購操作,中標利率2 10%。這已是央行連續7日每天僅進行30億元的逆回購縮量投放,創下去年1月以來的最低操作規

發布時間: 2022-07-13 09:38
資訊   2022-07-13

美元指數創近20年新高 黃金期貨創出逾9個月新低

由于對美聯儲激進加息的擔憂,美元指數11日大漲近1%創出近20年新高。受此影響,歐美股市、大宗商品均走弱,而黃金期貨創出逾9個月新低。美

發布時間: 2022-07-13 09:36
資訊   2022-07-13

美股三大股指全線下跌 納斯達克跌幅創下記錄以來最大跌幅

今年上半年,美股持續回落。數據顯示,道瓊斯指數上半年下跌15 3%,納斯達克綜合指數下跌29 5%,標普500指數下跌20 6%。其中,納斯達克連續

發布時間: 2022-07-04 09:51
推薦   2022-07-04

融資客熱情回升 兩市融資余額月內增加超344億元

近期A股走強,滬指6月以來上漲4%,融資客熱情明顯回升。數據顯示,截至6月16日,兩市融資余額1 479萬億元,月內增加344 67億元,最近一個半

發布時間: 2022-06-20 09:41
資訊   2022-06-20

4個交易日凈買入超百億元 北向資金持續流入A股市場

北向資金凈流入態勢延續。繼6月15日凈買入133 59億元后,北向資金6月16日凈買入44 52億元。自5月27日至今,除6月13日以外,北向資金累計凈

發布時間: 2022-06-17 09:37
推薦   2022-06-17