GeddyJS(Node.js + Socket.io框架)实时选项

时间:2014-05-14 15:48:58

标签: javascript node.js websocket socket.io geddy

我有一个Geddy应用程序,它有一些实时模型(我记得使用-rt生成一些模型),我想重新审视我的Geddy应用程序的实时性。

我不需要自动更新模型(我不与客户共享模型;我只使用Geddy作为REST后端)

但我想通过socket.io显式发出事件并在我的控制器中使用它的房间功能,并且我将在客户端适当地处理这些事件。

所以,我的问题是:1。如何清理我现有的代码,因为我不想在我的应用程序中使用实时模型2.为了显示来自控制器的事件,我需要做些什么?

我尝试在after_start.js中执行以下操作,如下所示:https://github.com/geddy/geddy/wiki/Realtime-and-MVC in" Realtime for existing projects"部分,但没有消息记录...

console.log('Here 1');
geddy.io.sockets.on('connection', function(socket) {
    console.log('Here 2');
    socket.emit('hello', {message: "world"});
    socket.on('message', function(message) {
        console.log('Message!');
    });
});

非常感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

刚刚发现after_start.js是一个解决方法,因为应用程序缺少事件来了解服务器实际启动的时间(因此您可以知道何时可以附加Socket.io)。现在,工作进程中的geddy对象会发出一个可以使用的“已启动”事件:

http://geddyjs.org/reference#global

因此,在init.js中为该事件设置一个监听器,然后在那里设置你的RT代码。