1、如何实现namespace划分?web
同一域名下面,不一样namespace的socket对象:有一个共同点,就是都在同一个engine对象(websocket封装对象)的事件(open、data)响应函数;有一个不一样点,各自socket对象的nsp属性值不一样。 而后,每一个websocket的数据包(packet),也有nsp属性值。 websocket
因此,在响应函数里面,第一句就是判断nsp值,是否与该socket值相同。 相同,则是该socket处理范围; 不相同,不作任何处理。socket
2、如何共用websocket链接?函数
这个简单。其实就是Socket类,不直接对外暴露给用户,经过全局io函数。 对同一域,该io函数内部,维系一个Manage对象,它与websocket链接一一对应;Manager对象,维护n个Socket对象。spa
协议格式参考: https://www.jianshu.com/p/a3e06ec1a3a0对象