无法销毁node.js中的Twitter流
我正在尝试将NPM twitter与Socket.io一起使用。stream.destory()函数不起作用无法销毁node.js中的Twitter流,node.js,twitter,socket.io,twitter-streaming-api,Node.js,Twitter,Socket.io,Twitter Streaming Api,我正在尝试将NPM twitter与Socket.io一起使用。stream.destory()函数不起作用 var util = require('util'); var twitter = require('twitter'); var twit = new twitter({ consumer_key: '', consumer_secret: '', access_token_key: '', access_token_secret: '' }); var curren
var util = require('util');
var twitter = require('twitter');
var twit = new twitter({
consumer_key: '',
consumer_secret: '',
access_token_key: '',
access_token_secret: ''
});
var currentTwitStream;
hashtags = [];
module.exports = function (io) {
io.sockets.on('connection', function (socket) {
console.log('A new user connected!');
socket.on('data', function(data){
hashtags.push('#' + data.hashtag);
hashtags.forEach(function(entry) {
console.log(entry);
});
if(currentTwitStream) currentTwitStream.destroy();
twit.stream('statuses/filter',{track:hashtags.join(',')},function(stream){
currentTwitStream = stream;
stream.on('data',function(data,err){
socket.emit();
console.log(data.text);
});
});
});
});
};
如果您能提供有关如何解决此问题的任何反馈,我将不胜感激。以下代码帮助我销毁了该流
var clientSteam = {};
clientSteam = stream;// After your stream.on('data',function(data,err){
//现在我们要摧毁这条小溪
if (Object.keys(clientSteam).length != 0)
setTimeout(closeStream, 1000);
function closeStream(){
console.log('Closing stream...');
clientSteam.destroy();
}
不工作
意味着什么?它没有破坏流@loganfsmythAs,因为它一直在发送数据?只是想了解更多的信息。Yer它不断地发送数据,连接继续流式传输——Twitter API只允许一个流,因此,当客户端发出新的hashtag来跟踪之前的流时,它需要关闭和打开@洛甘斯迈思