【发布时间】:2013-03-16 21:39:07
【问题描述】:
我正在 heroku 上设置一个 node.js 推特流媒体应用程序。在第二个客户端建立连接之前,它可以完美运行。这是我在向某人展示之前没想到的:(
我正在为 Twitter Stram API 功能使用 tweet-pipe:https://github.com/peeinears/tweet-pipe
为了让 Socket.IO 在 Heroku 上运行,我按照以下说明操作:https://devcenter.heroku.com/articles/using-socket-io-with-node-js-on-heroku
io.configure(function () {
io.set("transports", ["xhr-polling"]);
io.set("polling duration", 10);
});
在我的 app.js 文件中,我有
io.sockets.on('connection', function (socket) {
tp.stream('statuses/filter', params, false, function (stream) {
stream.on('tweet', function (tweet) {
socket.emit('tweet', tweet );
});
});
});
同样,这一切都很好,直到另一个客户访问该页面。然后原始连接丢失,而第二个客户端有连接。有什么想法吗?我对 Socket.IO 有点陌生。
【问题讨论】:
-
为每个连接器创建一个新的 tweet-pipe,或者单独注册 tp 流并广播消息。 (如
io.sockets.emit('tweet', tweet))是一些快速的想法。我对推文管道或您的用例知之甚少,无法提供更多建议。 -
谢谢@Chad。这帮了大忙。
标签: node.js heroku socket.io twitter-streaming-api