簡體   English   中英

如何查找erc20代幣余額

[英]How to find erc20 tokens balance

我正在嘗試查找特定地址的 erc20 代幣(例如 Tether)的余額。

實際上,我希望找到一個像下面這樣工作的 API,獲取帳戶地址和合約地址並返回該特定令牌的余額。

以太掃描令牌檢查

為了闡明我的目的,在 TRC20 網絡中,我使用了這個端點,並且響應中有一組 trc20 代幣余額。

每個地址的 ERC-20(以及類似 ERC-20,如TRC-20BEP-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

Go: https://gist.github.com/arshamalh/9fe035f7fe18cb538c873

您可以使用一個簡單的 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.

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