首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将从同一实例启动的多个套接字连接捆绑在一起

将从同一实例启动的多个套接字连接捆绑在一起
EN

Stack Overflow用户
提问于 2014-02-04 03:07:53
回答 1查看 93关注 0票数 0

如果有多个传输协议从同一个客户端开始,那么如何将它们的唯一ids绑定在一起呢?对我来说,我使用了socket.io和binaryjs。Socket.io将在发送响应时处理请求和二进制and。我似乎想不出如何将它们联系在一起来实现这一点,因为每个协议都有自己的方法来确定它的id。因此,当我启动一个新客户端时,每个协议的实例都没有公共标识符。你怎么解决这个问题呢?

客户端:

代码语言:javascript
复制
<script src='/binary.js'></script>
<script src='/socket.io/socket.io.js'></script>
<script>
    var socket=io.connect('http://127.0.0.1:3000');
    var client=new BinaryClient('ws://127.0.0.1:3001');
    function doSomething() {
        socket.emit('someEvent',{success:'someData'});
    }
</script>
<input type='submit' value='Submit' onClick='doSomething();'>

服务器:

代码语言:javascript
复制
binjsConnections = {}
binjs.on('connection', function(binclient) {
    binjsConnections[binclient] = {client: binclient}
});

io.sockets.on('connection', function(ioclient) {

    // process data from io socket
    ioclient.on('someEvent', function(data) {
        // transport results over binjs socket
        binjsConnections[binclient].client.send(data)
    });
});
EN

回答 1

Stack Overflow用户

发布于 2014-02-04 09:12:46

为什么不使用会话cookie。我不确定您是否只使用http/websockets,但如果您是,您可以。如果你在谷歌上搜索"socket.io session authorization“,Socket.io有一些例子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21535622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档