[英]How to find erc20 tokens balance
每個地址的 ERC-20(以及類似 ERC-20,如TRC-20 、 BEP-20等)的代幣余額存儲在代幣的合約中。
Trongrid 使用一個單獨的數據庫來匯總整個 Tron 網絡歷史中所有Transfer()
事件(在 ERC-20 標准中定義)的代幣余額。 ERC-20 代幣可能有類似的第三方服務,但我不知道。 例如,Etherscan 確實具有相同的信息,但它們僅在地址詳細信息頁面上顯示,並且不提供包含此數據的 API。
為了獲得一個地址的所有 ERC-20 代幣余額,最簡單的解決方案(除了找到與 Trongrid 端點執行相同操作的 API 之外)是遍歷所有代幣合約(或者只是您感興趣的代幣in),並調用他們的balanceOf(address)
function。
在以太坊中,沒有像 Trongrid 這樣的內置 API 來檢索某些賬戶的代幣余額。
如果你想這樣做,你必須調用智能合約代幣的“balanceOf”方法。
Infura API 有一個eth_call 方法來執行此操作。
調用這個 API 有點棘手,為此我寫了兩個代碼片段,分別在 JS 和 Go 中。
JS: https://gist.github.com/arshamalh/33e6646eb793997f2cc69668bd97010a
您可以使用一個簡單的 Covlanet API 調用來調用它: https://www.covalenthq.com/docs/api/#get-/v1/{chain_id}/address/{address}/balances_v2/
如果要切換到任何其他網絡,只需更改chain_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.