我正在尝试从Node.js服务器连接到。为了找回过去的事情,我试着联系。
迄今已试过的步骤:-
连接是通过恩弗拉完成的。在多个版本上尝试了这些步骤
0.20.3版(Github版本):
var MyContract = web3.eth.contract(JSON);
contractAddress=<contractAddress>;
var contractInstance = MyContract.at(contractAddress);
var events = contractInstance.allEvents({fromBlock: 5000000, toBlock: 'latest'});
events.get(function(error, logs){
console.log(logs);
});
尽管有事件,但不会产生任何输出。如果因弗拉是问题所在,我还有其他方法可以从科万测试网获得事件吗?
我尝试了web3-1.0.beta19通过websockets连接到恩弗拉,但意识到没有websockets为Kovan服务。
发布于 2018-02-14 00:48:14
我通过使用零客户端提供者找到了一项工作。它以稳定的方式工作在Mainnet和Kovan RPC连接提供的因弗拉。
发布于 2018-05-16 08:38:51
当使用--chain=kovan
启动奇偶连接到kovan时,使用--ws-api
s中的pubsub、parity、parity_pubsub等附加选项,并添加--jsonrpcapis=all
选项。
如果使用上述选项启动奇偶校验,则可以在nodejs代码中使用contractInstance.events.MyEvents()
注册契约事件。
我的nodejs应用程序在运行本地ethereum节点时运行得很好,在迁移到kovan时很难捕获契约事件。我用上面的选项解决了这个问题。
复制下面为我工作的完整命令。
parity --chain=kovan --ws-apis="eth,net,web3,personal,web3,pubsub,parity,parity_pubsub" --rpcapi="eth,net,web3,personal" --jsonrpc-apis=all
希望能帮上忙。
https://ethereum.stackexchange.com/questions/38250
复制相似问题