ica*_*aro 4 javascript twitter node.js ntwitter
我是 node.js 的新手,所以请原谅这个简单的问题。我正在写一些标准的东西:一个使用 ntwitter 访问 twitter 并在 mysql 上保存内容的 REST API。我遇到的问题是使用 ntwitter 断开连接并重新连接回 Twitter。
我检查了一个与我的有点类似的问题,但仍然没有答案:Restarting nodejs ntwitter twitter stream with different track keywords
问题有两个方面:
1) 如何检查是否还twit.stream活着
2) 如何杀死它/手动断开与 Twitter 的连接
我正在使用destroy,但这似乎不起作用。代码的相关部分是:
if (values[0] == 'newStatusAdded') {
console.log('Need to stop twitter listener');
//check if twitter stream is running
if (twit.stream) {
twit.stream.destroy;
debugger;
console.log('Stopped twitter listener');
}
Run Code Online (Sandbox Code Playgroud)
谢谢....
我认为您的代码中某处有这样的设置:
twit.stream('statuses/sample', function(stream) {
stream.on('data', function (data) {
console.log(data);
});
});
Run Code Online (Sandbox Code Playgroud)
从回调中保存流变量,例如 after stream.on():
twit.currentTwitStream = stream;
Run Code Online (Sandbox Code Playgroud)
这只是一个建议。也许您有一个中央配置对象,这对于当前流对象来说是一个更好的位置。与currentTwitStream你可以做到这一点:
currentTwitStream.readable发生错误或关闭后为 false。currentTwitStream.destroy()破坏流。