【问题标题】:Restarting nodejs ntwitter twitter stream with different track keywords使用不同的跟踪关键字重新启动 nodejs ntwitter twitter 流
【发布时间】:2012-03-21 12:36:47
【问题描述】:
var twitter = require('ntwitter');
// Configure twitter

var keywords = ['hello', 'world'];

twit.stream('statuses/filter', {'track':keywords.join(',')}, function(stream) {
  stream.on('data', function (data) {
    console.log(data);
  });

  stream.on('end', function (response) {
    console.log("\n====================================================");
    console.log("DESTROYING");
    console.log("====================================================\n");
  });

  setTimeout(function(){
    stream.destroy();
  }, 60000);
});

我是 nodejs 的新手。什么是阻止这种情况并使用一组不同的关键字重新开始的最佳方法。

我可以销毁()流,然后创建一个新流。但是有没有我可以在不断开连接的情况下更改曲目关键字?

【问题讨论】:

    标签: node.js twitter stream


    【解决方案1】:

    我是菜鸟,所以可能这种方式不好,而且浪费资源,但我仍然不知道如何检查它,所以我将它放在这里,希望有高手告诉我们。是好是错,最重要的是,为什么?

    方法是将 tw.stream 调用放在一个函数中,并使用您要跟踪的单词数组调用该函数。它将开始跟踪新词,并停止跟踪删除的词:

    // Array to store the tracked words
    var TwitWords = [];
    
    // Tracker function
    function TrackWords(array){
      tw.stream('statuses/filter',{track:array},function(stream){
        stream.on('data',function(data){
          console.log(data.text);
        });
      });
    }
    
    // Add word
    function AddTwitWord(word){
      if(TwitWords.indexOf(word)==-1){
        TwitWords.push(word);
        TrackWords(TwitWords);
      }
    }
    
    // Remove word
    function RemoveTwitWord(word){
      if(TwitWords.indexOf(word)!=-1){
        TwitWords.splice(TwitWords.indexOf(word),1);
        TrackWords(TwitWords);
      }
    }
    

    我希望没问题,因为这是我找到的唯一方法。

    【讨论】:

    • 您似乎没有破坏当前正在运行的流。当你开始一个新的,而有一个正在运行时,它会关闭旧的吗?
    • 正如我所说,我仍然不知道如何调试它,所以无法确认。看看它是如何工作的,它看起来做得很好。如果您正在跟踪可口可乐和百事可乐,并且您使用 fanta 和 kas 调用 TrackWords,它会停止跟踪可口可乐和百事可乐。看起来不错,但可能是在浪费内存什么的。
    • twitter 只允许每个用户帐户一个流,因此当您启动一个新流而不破坏前一个流时...它将自动关闭。不过还是自己销毁比较好。
    • 您能否详细说明我如何销毁流 Abhidev?
    猜你喜欢
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多