Solidity
如何獲取交易的返回值而不是布朗尼中的交易收據
我的智能合約中有一個名為 的函式
getRandomNumer
,它返回一個字節 32。但是,在布朗尼中,當我進行交易時,它會返回交易收據。我如何獲得返回值?
requestId = vrf_consumer.getRandomNumber(get_seed, {'from': accounts[0]})
您可以
tx.return_value
在交易收據中使用或提出.call
請求。
.call
這將模擬正在進行的交易。請注意,如果您再次發送交易,然後.call
再次呼叫,情況會有所不同。這裡有些例子;
requestId
是交易收據:requestId = vrf_consumer.getRandomNumber(get_seed, {'from': accounts[0]})
requestId
是 requestId(返回值):requestId = vrf_consumer.getRandomNumber.call(get_seed, {'from': accounts[0]})
使用TransactionReceipt.return_value
tx = vrf_consumer.getRandomNumber(get_seed, {'from': accounts[0]}) request_id = tx.return_value