Wenn Sie einen Ereignis-Listener mit Geth einrichten (ich nehme an, auch mit Parity), erhalten Sie Benachrichtigungen, wenn ein bestimmtes Ereignis in den Ereignisprotokollen angezeigt wird.
Manchmal findet eine Neuorganisation statt, und der Block, in dem dieses Ereignis stattfand, wird verwaist und verschwindet aus dem Hauptverlauf. Dieselbe Transaktion kann dazu führen, dass ein Ereignis in einem anderen Block ausgelöst wird.
Ist folgendes richtig?
Gibt es Fallen für die unvorsichtigen oder interessanten implementierungsspezifischen Falten?
Ich glaube, Sie haben Recht, obwohl ich nicht glaube, dass ich es jemals getestet habe. Ereignisfilter in web3.js sind ein wenig seltsam – wenn Sie fromBlock auf früher als setzen 'latest'
, wird es bei historischen Ereignissen ausgelöst.
Wenn man sich die tatsächliche JSON-RPC-Spezifikation ansieht, scheint es, dass eth_getFilterChanges tatsächlich sagen wird, ob ein Ereignis über eine Neuorganisation entfernt wurde. Ich glaube zwar nicht, dass das aktuelle web3.js dies in großem Umfang ausnutzt, aber ein Client, der den RPC direkt verwendet (Schauder), könnte es besser wissen.
Edmund Edgar