So erhalten Sie eine Benachrichtigung, wenn eine Transaktion fehlgeschlagen ist, abgebrochen wurde oder erfolgreich war [geschlossen]

Ich bin neu in der Dapps-Welt und möchte Guthaben/Punkte abziehen, wenn ein Benutzer einen Artikel kauft. Derzeit kann ich das Guthaben nicht aktualisieren, da die Transaktion manchmal fehlgeschlagen ist, abgebrochen wurde oder nach 30 Sekunden bis 2 Minuten erfolgreich war Transaktionsereignis abhören, als ich eine Aktion ausführen kann.

redeemPoints(from, to, price, (err, res) => {
    if(!err){
      console.log(res) //old value of balance 
    }
})

Vielen Dank im Voraus.

Könnten Sie bitte etwas genauer erläutern, was Sie erreichen möchten?
Eigentlich möchte ich Punkte abziehen, wenn Benutzer ein Produkt kaufen, und ich weiß nicht einmal, ob die Transaktion erfolgreich ist, fehlschlägt oder die Transaktion 1 - 10 Minuten dauert
@UmairAhmed meinst du, dass du den Status einer anderen Datenbank entsprechend dem Ergebnis der Transaktion in der Blockchain änderst?

Antworten (1)

Sie können Ereignisse im Solidity Smart Contract verwenden. Einfach ausgedrückt besteht der Zweck eines Ereignisses darin, JavaScript-Callbacks in einer Benutzeroberfläche bereitzustellen, mit denen Sie Code ausführen können, je nachdem, ob das Ereignis erfolgreich war oder nicht, oder ob es einen Fehler gab.

Ich muss ein Ereignis von ABI auslösen und auf dem Client richtig lauschen?
Ja, Sie müssen ein Ereignis im Smart Contract auslösen und es in einem Frontend beobachten.