【问题标题】:socket.io custom emit event not workingsocket.io 自定义发出事件不起作用
【发布时间】:2011-05-10 22:19:10
【问题描述】:

我使用 npm 来安装 socket.io。服务器运行良好,但未捕获客户端发出的自定义事件。

socket.io 上的文档不是最新的,例如 git 页面说的 npm 存储库中不存在 socket.io-node 包。

所以我想知道这个功能是否在基本 socket.io 安装中消失了,或者我做错了什么。

我的代码基本如下:

服务器:

client.on('checkin', function (name) { ... });

客户:

socket.emit('checkin',name);

我还有什么需要做的吗?

【问题讨论】:

  • 你能提供示例代码吗?另外,你看过socket.io的示例代码吗?
  • 是的,我查看了示例代码。我有一个简单的聊天应用程序正在工作。除了上面的代码之外,其中的所有内容都按预期工作。但我只能使用内置事件,我不能创建任何自己的事件。我的解决方法是通过“消息”事件多路复用所有内容,但这并不理想。

标签: javascript node.js socket.io


【解决方案1】:

今天发布了 Socket.io 0.7(请参阅 this link),@penguinbroker 在其示例代码中使用的事件现在正在运行。

【讨论】:

    【解决方案2】:

    repo 上的文档在三天前更新,将引用从 'socket.io' 更改为 'socket.io-node',所以看起来事情在不断变化。

    要获得您需要的功能,您可以在https://github.com/torgeir/eventedsocket (npm install eventedsocket) 上查看 eventedsocket

    来自 README.md:

    Eventedsocket 为您的 socket.io 连接添加类似事件的行为,允许从客户端发送事件到服务器或从服务器发送到客户端。您的自定义事件以及所需数据以 json 格式通过 socket.io 可能选择的任何协议进行通信。

    【讨论】:

    • 回购信息+1;我很确定这里有问题的功能是 v0.7 的新功能,它仅在 master 上,尚未发布。
    猜你喜欢
    • 1970-01-01
    • 2015-03-10
    • 1970-01-01
    • 2017-12-14
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    • 1970-01-01
    相关资源
    最近更新 更多