【问题标题】:sails js socket events does not triggered after server restart服务器重启后未触发sails js套接字事件
【发布时间】:2015-01-17 11:35:29
【问题描述】:

我有一个模型用户存储在 Mongo 中(用户会话也存储在 redis 中)。例如,用户有这样的 id - user_1 和 user_2。 user_1 从客户端发送消息

socket.post('/user/move', {value: "some_value"}, function(res) {
        log('on move message: ', res);
    });

“移动”的控制器是

move: function(req, res, next) {
   var value = req.param('value');
   User.message("user_2", {from: "user_1", value: value});
}

它有效 user_2 收到了消息。但是,如果我重新启动一个 Sails 服务器并尝试发送(使套接字发布)相同的事件不会传递。

【问题讨论】:

  • 如果浏览器页面也没有刷新,那么客户端的socket就不会被重新打开。
  • 谢谢!你是对的,但为什么我在没有刷新页面的情况下收到 socket.on('connect') 消息?

标签: javascript node.js sockets sails.js


【解决方案1】:

我找到了我的问题的解决方案。服务器重启后我们需要这样做

socket.on('connect', function socketConnected() {
    socket.get('/user');
}

这将使用户订阅模型用户事件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-14
    相关资源
    最近更新 更多