socket.io与node.js/express.js存在问题
我在玩node.js和socket.io。这是我正在写的一段代码:socket.io与node.js/express.js存在问题,node.js,socket.io,express,Node.js,Socket.io,Express,我在玩node.js和socket.io。这是我正在写的一段代码: app.get('/play', function (req, res) { //some code you don't need to see var gameMessage = io.of('/game'+gameId); }); 所有东西都正确导入gameId设置正确且io变量初始化正确。 运行此代码时(尝试访问localhost/play时),出现以下错误: TypeError: Converting circular
app.get('/play', function (req, res) {
//some code you don't need to see
var gameMessage = io.of('/game'+gameId);
});
所有东西都正确导入gameId
设置正确且io
变量初始化正确。
运行此代码时(尝试访问localhost/play时),出现以下错误:
TypeError: Converting circular structure to JSON
at Object.stringify (native)
at Array.<anonymous> (/path/to/my/game/node_modules/express/node_modules/connect/lib/middleware/session/memory.js:74:31)
at EventEmitter._tickCallback (node.js:126:26)
当第二个玩家连接时,我在控制台中得到一个无限的错误循环
有人能猜出这是怎么回事吗?谢谢。你所做的是错误的,你不应该把Socket.IO代码放到你的路由中,Express.js应用程序和Socket.IO应用程序不会那样“连接”
使用Socket.IO服务器创建一个单独的文件,然后在希望连接到Socket.IO(从服务器端或客户端)时使用该文件发送消息。我希望为每对播放机创建一个单独的频道,但这些频道将在两个播放机连接时创建。可以这样做吗?你可以做其他事情,让每个用户都连接到他的频道。例如,当“Alex”向“Jim”发送消息时,“Jim”将收到消息,因为它收听“Jim”频道,反之亦然。
var chat = io.connect('http://localhost/chat' + gameId);
chat.emit('guess', {
guess: "ciao"
});
chat.on('guess', function (data) {
alert(data);
});