小编Moz*_*art的帖子

Socket.IO客户端在返回时接收离线消息

环境:

+的NodeJS Socketio

问题:

  1. 客户端A和客户端B都连接到服务器;
  2. 客户B离线;
  3. 客户端A向客户端B发送消息(客户端B仍然离线);
  4. 客户端B再次连接到服务器;
  5. [ 问题 ]客户端B无法接收来自A的消息;

服务器代码

var clients = {};
io.sockets.on('connection', function (socket) {
socket.on('online', function (data) {
    if (!clients[data.username]) {
        clients[data.username] = socket;
    }
    io.sockets.emit('message',  data.user + 'online now');
});
socket.on('say', function (data) {
    if (data.to == 'all') {
        io.sockets.emit('message', data.message);
    } else { //to specific client
        clients[data.to].emit('message', data.message);
    }
});
});
Run Code Online (Sandbox Code Playgroud)

描述

客户端B首先连接到一个地方的服务器.在客户端B离线期间,客户端A向客户端B发送消息.然后客户端B再次连接到另一个地方的服务器,客户端B需要从客户端A接收这些消息.使它工作?

javascript sockets offline node.js

13
推荐指数
1
解决办法
6861
查看次数

标签 统计

javascript ×1

node.js ×1

offline ×1

sockets ×1