1

我想与 Geddy 一起使用 socket.io。我只是按照以下链接中的说明进行操作:

https://github.com/mde/geddy/wiki/Getting-started-with-Geddy,-Socket.io,-and-Authentication

建议我如何在服务器端捕获特定模型的“连接”事件。

还可以在下面看到我到目前为止对这个模型所做的事情......

geddy scaffold -rt LiveUpdate stat:string category:string

并在“show.html.ejs”的“show.html.ejs”中找到了以下与socket.io相关的自动生成脚本

geddy.io.addListenersForModels(['LiveUpdate']);
geddy.model.LiveUpdate.on('update', function (chat) { 
  ....

我真正需要的是知道如何从服务器端捕获或发出这个模型的事件。

4

1 回答 1

1

在 Geddy 中从模型和控制器发出 socket.io 事件非常简单:

  • geddy.io.sockets.emit将向所有连接的客户端发出事件

如果您想监听来自特定客户端的事件或向特定客户端发送事件,您需要after_start.js在应用程序的配置目录中创建一个文件,并geddy.io像通常使用的那样使用socket.io

geddy.io.sockets.on('connection', function (socket) {
  socket.emit('news', { hello: 'world' });
  socket.on('my other event', function (data) {
    console.log(data);
  });
});
于 2012-11-30T22:10:08.123 回答