Node.js 如何在socket.io授权过程中读取express cookie?
许多文章()介绍了如何利用Node.js 如何在socket.io授权过程中读取express cookie?,node.js,session,cookies,express,socket.io,Node.js,Session,Cookies,Express,Socket.io,许多文章()介绍了如何利用授权事件提取express会话的cookie: io.set('authorization', function(data, accept) { if (!data.headers.cookie) { return accept('No cookie transmitted.', false); } else { // extract
授权
事件提取express会话的cookie:
io.set('authorization', function(data, accept) {
if (!data.headers.cookie) {
return accept('No cookie transmitted.', false);
}
else {
// extract the signed cookie..
}
我打印了data.headers
,没有cookie
属性
我已经检查了cookie(通过Chrome开发者工具)和connect.sid
域是localhost
,而io
域是127.0.0.1
。也许问题是存在的,但我不知道如何改变它
另一个方面是,服务器A(端口3000)使用express cookie,服务器B(端口4000)使用socket.io cookie
我很乐意找到解决办法。谢谢。我刚刚解决了这个问题。问题确实出在域名上。您应该将
socket.io
域更改为localhost
,而不是127.0.0.1
希望它能帮助别人 我知道这很老了,但我已经为类似的问题挣扎了好几天了,把ip换到域名也帮我解决了这个问题。非常感谢你!