Ошибка: текущий провайдер не поддерживает подписки: MetamaskInpageProvider

Я просто пытаюсь настроить прослушиватель событий с помощью web3 и метамаски.

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

Результат:

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

Как вы прослушиваете контрактные события с помощью метамаски?

Ответы (1)

В настоящее время есть некоторые проблемы с тем, как метамаска обрабатывает события.

Пока эти проблемы не будут решены, вы можете попробовать использовать другого провайдера только для обработки событий. Вам нужно будет создать еще один экземпляр web3 с другим провайдером. Поставщиком может быть, например, наша собственная нода или инфура.

Прошло пол года, что нового?