从 WebSocket 请求中读取 Cookie 信息


我正在使用Node.js和WebSocket-Node

(WebSocket-Node)来创建WebService。我需要从 Web 服务器访问 cookie 或会话信息,以将 WebSocket 连接绑定到用户 ID。我知道 cookie 信息是通过 req.cookie 发送的,但我不熟悉访问"connect.sid"cookie 的语法。

谢谢!

通过查看库代码(大约第 200 行):

https://github.com/Worlize/WebSocket-Node/blob/master/lib/WebSocketRequest.js

似乎 cookie 是一个具有"名称"和"值"属性的对象数组

所以你可以有一个这样的函数(未经测试):

function getSidFromCookies(cookies) {
     var filtered = cookies.filter(function(obj) {
         return obj.name == 'connect.sid';
     });
     return filtered.length > 0 ? filtered[0].value : null;
}

然后你可以做:

var connectSid = getSidFromCookies(req.cookies);

connectSid 要么是 cookie 值,要么是 null

相关内容

  • 没有找到相关文章

最新更新