在socketio中,我可以轻松地使用socket.handshake.headers.cookie
获取cookie。我怎么能在ws
中做同样的事情?
答案 0 :(得分:4)
你可以尝试这个:ws.upgradeReq.headers.cookie
。
答案 1 :(得分:0)
我正在使用 client.upgradeReq.headers.cookie,但突然中断了。 我在 request.headers.cookie 中找到了 cookie:
wss.on('connection', function connection(client, request))
{
...
var cookies = {};
//Not working any more
//if(client.upgradeReq.headers.cookie) request.headers.cookie.split(';')...
//This works
if(request.headers.cookie) request.headers.cookie.split(';').forEach(function(cookie)
{
var parts = cookie.match(/(.*?)=(.*)$/);
var name = parts[1].trim();
var value = (parts[2] || '').trim();
cookies[ name ] = value;
});
...