Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在socket.io授权过程中读取express cookie?_Node.js_Session_Cookies_Express_Socket.io - Fatal编程技术网

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换到域名也帮我解决了这个问题。非常感谢你!