Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.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 即使客户端尚未打开浏览器,套接字连接仍保持打开状态_Javascript_Node.js_Websocket_Express.io - Fatal编程技术网

Javascript 即使客户端尚未打开浏览器,套接字连接仍保持打开状态

Javascript 即使客户端尚未打开浏览器,套接字连接仍保持打开状态,javascript,node.js,websocket,express.io,Javascript,Node.js,Websocket,Express.io,我正在开发一款高度依赖套接字的游戏。我想创建一个套接字连接,以便即使客户端尚未登录也保持打开状态 这个游戏只有一个管理员和几个玩家。管理员有权覆盖玩家。下面是admin文件后端的节点js代码(它只是在播放器文件中触发套接字),如果admin选择覆盖播放器: serverfile.app.io.route('forceForward', req => { req.io .room(req.session.user.game_id) .broadcast('

我正在开发一款高度依赖套接字的游戏。我想创建一个套接字连接,以便即使客户端尚未登录也保持打开状态

这个游戏只有一个管理员和几个玩家。管理员有权覆盖玩家。下面是admin文件后端的节点js代码(它只是在播放器文件中触发套接字),如果admin选择覆盖播放器:

  serverfile.app.io.route('forceForward', req => {
    req.io
      .room(req.session.user.game_id)
      .broadcast('gameforced');
    console.log('broadcast game force');
    }
  );
这里的服务器文件是运行应用程序的文件,它包含带有var name app的库
express.io

以下是在播放器前端屏幕中触发的Javascript代码:

  socket.on('gameforced', function() {
    socket.emit('buy', 0);
    window.location.replace('/buyer_wait')
  });
如果播放机已登录,但如果播放机未登录,则该代码工作正常,并在播放机文件后端触发socket buy。任何建议


谢谢

什么样的“插座”?!插座不能一直保持打开状态。你的应用程序设计很糟糕。我正在调用前端javascript中的库
/socket.io/socket.io.js
。在后端节点,JS使用库
express.io
。当我使用
控制台.log检查后端时,它似乎没有收到消息。请添加更多代码,您的后端和前端:我已经添加了代码,希望这有帮助。什么类型的“套接字”?!插座不能一直保持打开状态。你的应用程序设计很糟糕。我正在调用前端javascript中的库
/socket.io/socket.io.js
。在后端节点,JS使用库
express.io
。当我使用
console.log
检查后端时,它似乎没有收到消息。请添加更多代码,您的后端和前端:我已经添加了代码,希望这有帮助。