簡體   English   中英

智能合約的 State 已更新,但 etherscan 上未列出交易

[英]State of a smart contract updated, but no transaction listed on etherscan

我正在查看 etherscan 上的合同,我可以看到變量已更新,但查看交易列表似乎沒有任何交易修改了 state。

讓我們以這筆交易為例。

我們可以看到正好 4 筆交易: 以太幣/美元

現在,使用 Etherscan 的read contract功能,我們可以看到phaseAggregators的各種響應,在智能合約中定義如下:

mapping(uint16 => AggregatorV2V3Interface) public phaseAggregators;

我們可以添加 0,1,2,3,4,5 等,但仍然可以得到響應。

但是,只有 2 個元素被添加到 4 個事務的映射中:(標記為綠色):事務列表

但是使用 etherscan“讀取合約”功能,我發現 phaseAggregators 映射有 5 個元素。

據我了解,應該還有 3 筆交易。 他們在哪里?

etherscan 是否有可能沒有顯示所有交易?

在 Etherscan 中,有第二個交易列表,雖然名字很奇怪,但稱為internal transactions 內部交易是由另一個合約發起的交易。

所以你可以想象這樣的流程:

人員 -> 合同 A -> 合同 B

合約 A 與合約 B 的交易將顯示為“內部交易”。

這可能是一個很長的列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM