簡體   English   中英

如何判斷ERC20令牌轉移是否成功?

[英]How to tell if an ERC20 token transfer succeeded?

我整理了一些代碼以使用web3.js 1.0.0-beta46發送一些令牌,然后決定嘗試發送比我錢包里更多的令牌。 令我驚訝的是,交易發送成功,並且我收到了txid,但當然轉移失敗了

這是嘗試(在Ropsten上):

https://ropsten.etherscan.io/tx/0xaf2708dcc9b86b7cca0076e329a1e81fc28fdc4a97765b0a79544ec0685cfa69

現在我的問題是:我怎樣才能知道轉移成功的時間? 或就此而言,如何獲得錯誤消息? etherscan僅表示:

ERC-20令牌傳輸錯誤(無法找到相應的傳輸事件日志),請與發送方聯系

最簡單直接的方法是在傳輸之前和之后檢查發送方和接收方的余額。

現在,關於失敗的轉賬,在閱讀合同后,我注意到,如果資金不足,您簡單地返回false即可進行有效交易。 您應該做的是使用require進行檢查以還原交易。 這樣,EVM將還原無效的事務,該事務將被etherscan識別並顯示事務失敗。

暫無
暫無

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

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