【问题标题】:Sending session specific messages with socket.io and sails.js使用 socket.io 和sails.js 发送特定于会话的消息
【发布时间】:2014-02-05 16:40:08
【问题描述】:

我正在尝试使用sails.js 框架实现私人聊天功能,但在尝试向特定用户发送消息时遇到了一些麻烦。

目前,我已经通过使用 socket.io 的 .socket(socket.id).emit(event,message) 将消息发送到特定的 socket.id 来实现私人通信,但这种方法的问题是每次用户打开一个新选项卡时,一个新的为该新连接生成 socket.id。

我的问题是:sails.js 是否促进了一种向特定用户session 发送事件(使用 socket.io)而不是一堆套接字 id 的方式?这些技术有可能吗?

所以我只能发送一次事件,并确保在聊天应用当前打开的所有选项卡中都收到它。

提前致谢。

【问题讨论】:

    标签: node.js express websocket socket.io sails.js


    【解决方案1】:

    Sails 用一些有用的 pubsub 方法扩充了它的所有模型。每当您通过套接字请求(例如 socket.get('/user/123') )找到模型时,请求套接字会自动订阅有关该模型的所有消息。然后,您可以调用 User.message(123, data) 向该用户的所有已连接套接字发送消息。

    pubsub 方法的文档是here

    【讨论】:

    • 谢谢,我试试看。
    猜你喜欢
    • 2012-07-08
    • 1970-01-01
    • 2011-06-06
    • 2021-04-10
    • 2011-10-18
    • 2014-08-14
    • 2012-05-24
    • 2016-04-28
    • 2014-07-25
    相关资源
    最近更新 更多