我开发了一个非常简单的节点应用程序,我在其中使用“Sokect.IO”来使用来自特定 Twitter 帐户的“ntwitter”流式传输推文。
所以当有新推文时我有这个代码:
twit.stream('user', {track:'KITKAT'}, function(stream) {
stream.on('data', function (data) {
try{
var tweet = {};
tweet.name = data.user.name;
tweet.avatar = data.user.profile_image_url;
tweet.content = data.text;
tweet.dateTime = moment(data.created_at).format('llll');
//console.log(tweet);
socketServer.sockets.emit("tweet", tweet);
} catch(e){
console.log("Error: " + e);
}
});
});
socketServer.sockets.on("connection", function(socket){
console.log("new socket");
var origen = socket.handshake.address.address;
if(origen == "127.0.0.1")
return;
socket.emit("connection", "connection refuse: " + origen);
socket.disconnect();
});
“问题”是即使网站上没有用户观看推文,它也总是会尝试流式传输新推文。
我如何限制这一点,以便仅在我有用户连接时才能获得推文?
你可以看到我正在做的一个例子:http: //juanjardim.com/work/node
谢谢