socket.io笔记三之子命名空间的socket连接
Posted 向着太阳生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了socket.io笔记三之子命名空间的socket连接相关的知识,希望对你有一定的参考价值。
当客户端发送admin命名空间下的连接,如果主连接也监听了connetion事件,主连接的connection事件会先触发执行,然后紧接着触发执行admin命名空间下的connection事件。如果客户端连接的是主连接,admin空间下的connection事件不会触发执行。
//服务端代码 var app = express(); var server = require(‘http‘).createServer(app); var io = require(‘socket.io‘)(server,{handshake:{xdomain:true}}); var adminNameSpace =io.of(‘/admin‘); adminNameSpace.on(‘connection‘, function(socket){ console.log(‘admin‘) } io.on(‘connection‘, function(socket){ console.log(‘io‘)
//io.close() 如果调用了close关闭方法,主连接关闭,子空间下的connection事件不会执行 } //客户端代码 var ws = io(‘http://localhost:3002/admin‘); //服务端先输出"io",然后输出"admin" 如果连接的是ws = io(‘http://localhost:3002‘); //服务端只输出"io",adminNameSpace 空间下的connection事件不会执行 NOTE:在连接adminNameSpace命名空间时,如果主连接回调中把主连接关闭了,比如调用了io.close(),那么adminNameSpace的connection事件不会被执行
以上是关于socket.io笔记三之子命名空间的socket连接的主要内容,如果未能解决你的问题,请参考以下文章