【问题标题】:Node js & socket io cookie value does not existsNode js & socket io cookie 值不存在
【发布时间】:2015-01-30 00:11:48
【问题描述】:

当我的用户登录我的系统时,我试图设置一个 cookie,我在密码和用户名经过身份验证后执行此操作。

       setcookie('lb_login_id', $_SESSION['User']['id']);

现在是在这一点之后我的用户连接到套接字:

var socket = io.connect('http://mydomain.local' + ':' + 3000);

然后当用户连接时,我打印出 cookie 数据:

    io.on('connection', function(socket){
    console.log('a user connected');
    console.log(socket.request.headers.cookie);

});

但是lb_login_id 值不在 cookie 中:

io=fP13ZJ4Lgk2UL2QmAAAA; PHPSESSID=257r236nn3a1ru0b8lf2ocuvh4; XDEBUG_SESSION=XDEBUG_ECLIPSE

谁能告诉我可能出了什么问题?

更新

调试后我可以看到,在我重定向到内部页面后,cookie 也从我的$_COOKIE array 中消失了?

【问题讨论】:

  • 在尝试在 PHP 中设置 cookie 之前,您是否使用 session_start()
  • 是的。并且会话变量正确保存在我的 $_SESSION

标签: javascript php node.js cookies socket.io


【解决方案1】:

我在另一个问题上找到了答案:

PHP not saving cookie

显然你必须指定域

【讨论】:

    猜你喜欢
    • 2014-10-18
    • 2017-08-07
    • 2015-12-24
    • 2013-04-20
    • 2016-02-19
    • 2015-06-14
    • 1970-01-01
    • 2018-12-13
    • 2020-11-12
    相关资源
    最近更新 更多