Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 如何获取(Express的)sessionID的websocket连接大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在Express Express运行的同一端口上使用WebSockets npm install ws.

我想从刚刚制作并升级到WebSocket的http连接中提取相关联的“sessionID”.

// start express listening
server.listen(conf.server.port,conf.server.host);

var WebSocketServer = require('ws').Server,wss = new WebSocketServer({server: server});

wss.on('connection',function(ws) {
    var sessionID = // how do I get this?
    ws.on('message',function(messagE) {
        console.log('received: %s',messagE);
    });
    ws.send('something');
});

如何才能做到这一点?

(我目前通过在页面中发送sessionID来解决问题,但这是丑陋的.)

解决方法

>解析cookie
>获取会话ID
>获取会话数据

var express = require('express');
var parseCookie = express.cookieParser();
var MemoryStore = express.session.MemoryStore;

var store = new MemoryStore();

app.configure(function() {
    app.use(express.session({ store: store,secret: '123456',key: 'sid' }));
});

wss.on('connection',function(ws) {
    parseCookie(wS.UpgradeReq,null,function(err) {
        var sessionID = wS.UpgradeReq.cookies['sid'];
        store.get(sessionID,function(err,session) {
            // session
        });
    }); 

    ws.on('message',messagE);
    });
    ws.send('something');
});

大佬总结

以上是大佬教程为你收集整理的node.js – 如何获取(Express的)sessionID的websocket连接全部内容,希望文章能够帮你解决node.js – 如何获取(Express的)sessionID的websocket连接所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。