Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 服务器重新启动后不会触发sails js套接字事件_Javascript_Node.js_Sockets_Sails.js - Fatal编程技术网

Javascript 服务器重新启动后不会触发sails js套接字事件

Javascript 服务器重新启动后不会触发sails js套接字事件,javascript,node.js,sockets,sails.js,Javascript,Node.js,Sockets,Sails.js,我有一个模型用户存储在Mongo中,用户会话也存储在redis中。例如,用户有这样的ID-user_1和user_2。用户_1从客户端发送消息 socket.post('/user/move', {value: "some_value"}, function(res) { log('on move message: ', res); }); 移动控制器是 move: function(req, res, next) { var value = req.param(

我有一个模型用户存储在Mongo中,用户会话也存储在redis中。例如,用户有这样的ID-user_1和user_2。用户_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});
}

用户_2收到了消息。但是,如果我重新启动一个sails服务器并尝试发送makesocketpost,则相同的事件不会传递。

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

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

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

如果浏览器页面也未刷新,则客户端上的套接字将不会重新打开。Thanx!你是对的,但为什么我在“连接”消息上没有刷新页面就得到了一个套接字?