Go-Ethereum
您如何檢查帳戶是否以目前狀態存在?
目前無法以某種方式檢查 trie 中是否存在帳戶。我正在尋找這樣的東西:
> web3.eth.accountExist("0x743623152a53b53be5f3463746726373") true >
控制台中有這樣的功能嗎?
注意,我想檢查狀態樹(儲存在 LevelDB 中的 StateDB 數據庫),而不是使用者錢包列表。
getBalance
除了,getTransactionCount
(getStorageAt
,getCode
用於合約)之外,沒有標準介面可以訪問乙太坊世界狀態。state trie 是一種低級概念,客戶可以自由選擇最適合他們的任何實現。您必須查看您的特定客戶端以確定如何訪問它。
這是實現您想要的東西的一種迂迴方式,但我不相信有直接的方式。
如果一個賬戶有一個非零餘額(比如一個外部擁有的賬戶,它只收到了乙太幣,沒有發送任何東西)或者它有一個非零的 nonce(比如一個外部擁有的賬戶這已經發送了它收到的所有乙太幣,或者一個合約賬戶,因為合約賬戶總是以隨機數 1 開始)。
您應該能夠使用
eth_getBalance
和的組合eth_getTransactionCount
來檢查目前 trie 中是否存在帳戶。