【发布时间】:2014-07-21 15:25:24
【问题描述】:
我一直在编写使用 Twitter Streaming API 的应用程序。我正在使用在 GIThub 上找到的 TheMattHarris OAuth 库。这就是我通常设置流媒体流程的方式。
我首先像这样异步调用stream.php:
xmlhttp.onreadystatechange = function(){
// end of stream
}
xmlhttp.open("GET", "stream.php?term="+term, true);
xmlhttp.send();
我的 stream.php 看起来像这样:
$connection = new tmhOAuth(array(
'consumer_key' => CONSUMER_KEY,
'consumer_secret' => CONSUMER_SECRET,
'user_token' => USER_TOKEN,
'user_secret' => USER_SECRET,
));
$method = "https://stream.twitter.com/1.1/statuses/filter.json";
$connection->streaming_request('POST', $method, array('track'=>$term), 'twitter_callback');
tmhUtilities::pr($connection);
function twitter_callback($data, $length, $metrics) {
// handle tweet here
}
问题是我似乎无法停止这个流。我不知道它会运行多长时间才能自行耗尽。由于这是一个 Web 应用程序,我可以刷新页面并搜索新术语,但旧流似乎仍在运行。
所以我有两个问题:如何停止此类流?这是实现 Twitter 流的正确方法吗?
【问题讨论】: