30 交易确认疑问

新手有个疑问 确认一笔转账交易或者其他交易是否成功 不能根据交易的hash查交易明细里面的状态 如果是成功就直接判订这笔交易成功了吗 你们说的扫块去扫什么转账事件 是在扫什么
image.png

请先 登录 后评论

最佳答案 2022-05-17 20:59

交易成功 是通过交易的hash查交易收据的状态来确认,表是交易执行了。
交易失败表示交易没执行。

至于交易内的状态变化, 是否按你的逻辑预期执行, 这个是另一回事。

举个例子: 一个交易原本想向 A 转 10 token, 结果实现的逻辑转了 0 token , 你的交易成功了,是指确实执行了交易,但是却没有转10 token, 有没有转 10 token, 你需要通过查询状态或通过日志来查看。

请先 登录 后评论

其它 2 个回答

Verin

一般dapp做法是轮训这笔hash被多少个块确认了就表示这一笔交易成功了,一般好像是12个块;具体你可以看pacnkeswap一笔交易提交后那个进度条的逻辑,他们就是这么做的;

请先 登录 后评论
Byzantine

如果是一般情况下,直接根据交易哈希来判定交易是否成功就可以了。监听转账事件是可以抢先交易的,区块链的运行是有先后顺序的,一笔交易发送之后先广播,然后根据gas的大小决定打包顺序,当这笔交易广播之后大家就可以知道,如果这笔交易是有利可图的,可以以比这笔交易更高的gas抢先交易。我不知道你的问题是不是这个,希望对你有帮助!

请先 登录 后评论
  • 3 关注
  • 0 收藏,4045 浏览
  • Stone 提出于 2022-05-17 16:24