我正在开发一个应用程序,它将使用Meteor.js和Twit在浏览器中显示来自某个主题标签的twwets。 我实际上需要显示从服务器到客户端的Twit流。我实际上已经将流的启动和停止放在流星方法中,只有当我处于良好的客户端视图时才激活它们,但是console.log()仅在服务器端运行。
var Twit = Meteor.require('twit');
var T = new Twit({
consumer_key: '...',
consumer_secret: '...',
access_token: '...',
access_token_secret: '...'
});
var stream;
Meteor.methods({
stream: function(hashtag) {
//Initialisation
stream = T.stream('statuses/filter', { track: hashtag });
// stream launch
stream.on('tweet', function (tweet) {
//Console log for testing
console.log(tweet.user.name+" a tweeté ceci: "+tweet.text+" le "+tweet.created_at);
console.log("=========================================");
});
},
streamStop: function() {
stream.stop();
}
});
Template.hashtagPage.rendered = function() {
var hashtag = document.getElementById('hashtag').innerHTML;
// Récupère les ID pour le stream
Meteor.call('stream', hashtag);
};
// Stop le stream quand on quitte la page
Template.hashtagPage.destroyed = function(){
Meteor.call('streamStop');
};
您可以在此处找到 Twit :https://github.com/ttezel/twit
我的 git repo 如果您需要:https://github.com/ABattut/croisillon/commits?author=ABattut
我尝试了一些解决方案,比如创建一个将T对象返回给客户端的函数,徒劳无功。将推文返回给客户端并显示它。我也试图使用Fiber(就像谷歌的一些问题中所见)。
我不知道怎么做。我正在寻找一个解决方案来解决console.log()客户端的Twit流,或者直接在HTML中显示它们的方式(这将是最好的)。
感谢您阅读和回答。
答案 0 :(得分:0)
只需将推文添加到客户端和服务器上可用的Meteor.Collection
,并且客户端上的合适光标将为您提供最新的推文,以便在HTML,控制台或任何地方显示
您必须在插入时向推文添加时间戳,或者可能操纵twitterCreated
字段以允许您按到达时间排序并允许定期删除旧推文。