Web3js

Infura .watch 錯誤:無效的 JSON RPC 響應:“”

  • May 19, 2018

我正在嘗試對契約中的事件使用 .watch() 命令。每當我執行 .js 文件時,都會看到以下內容:

錯誤:無效的 JSON RPC 響應:“”

我不在我的電腦前,直到今天晚些時候才能粘貼我的 .js 文件,但是這個錯誤提示了什麼?每次執行文件時都會顯示。這可能是契約實例或 web3 本身的問題嗎?

先感謝您。

正如 Ismael 所述,Infura 不支持使用 .watch() 事件。解決方案是使用 Infura websockets。工作程式碼可以在這裡找到:Infura web3 事件提供程序(.get & .watch)

我還使用 web3 上的 watch() 添加了問題來監視事件。

但我設法通過使用替代方法(文件)來解決它們:

// Or pass a callback to start watching immediately
var event = myContractInstance.MyEvent([{valueA: 23}] [, additionalFilterObject] , function(error, result){
 if (!error)
   console.log(result);
});

對於此類事件:

event singleNumber(uint256 number);

我得到它的價值是這樣的:

var event = myContractInstance.singleNumber({}, function(error, result){
 if (!error)
   var number = result.args.number.toNumber();
});

引用自:https://ethereum.stackexchange.com/questions/48549