Fehler: Der aktuelle Anbieter unterstützt keine Abonnements: MetamaskInpageProvider

Ich versuche einfach, einen Ereignis-Listener mit web3 und Metamask einzurichten.

  incrementEvent = existingContract.events.Incremented(function(error, event){
                  if (error) console.log(error);
                  console.log("event is: ", event);
                })

Ergebnis:

Error: The current provider doesn't support subscriptions: MetamaskInpageProvider
    at Subscription.subscribe (bundle.js:45443)
    at Contract._on (bundle.js:48777)
    at (index):48
    at tryCatcher (bundle.js:44235)
    at Promise._settlePromiseFromHandler (bundle.js:42267)
    at Promise._settlePromise (bundle.js:42325)
    at Promise._settlePromise0 (bundle.js:42370)
    at Promise._settlePromises (bundle.js:42453)
    at bundle.js:39334
    at MutationObserver.<anonymous> (bundle.js:43502)
(index):50 event is: null

Wie hören Sie Vertragsereignisse mit Metamask?

Antworten (1)

Derzeit gibt es einige Probleme mit der Art und Weise, wie Metamask Ereignisse verarbeitet.

Bis diese Probleme gelöst sind, können Sie versuchen, einen anderen Anbieter nur für die Behandlung von Ereignissen zu verwenden. Sie müssten eine weitere web3-Instanz bei einem anderen Anbieter instanziieren. Der Anbieter könnte zum Beispiel unsere eigene Node oder infura sein.

Ein halbes Jahr ist vorbei, etwas Neues?