可以';t在Laravel 4.2中创建cookie/会话


Can't create cookies/sessions in Laravel 4.2

突然,我的Laravel(4.2)应用程序停止了创建cookie(因此,它停止了与这些cookie链接会话)。我正在运行我在另一篇文章中看到的这个测试:

// routes.php
Route::get('cookieset', function(){
    $cookie = Cookie::make('foo', 'bar', 60);
    return Redirect::to('cookieget')->withCookie($cookie);
});
Route::get('cookieget', function(){
    dd(Cookie::get('foo'));
});

因此,如果我在浏览器中打开/cookieset,就会创建cookie本身(可以在Reditect::to()之前dd($cookie)

 object(Symfony'Component'HttpFoundation'Cookie)#165 (7) {
     ["name":protected]=> string(3) "foo"
     ["value":protected]=> string(3) "bar"
     ["domain":protected]=> NULL
     ["expire":protected]=> int(1409694104)
     ["path":protected]=> string(1) "/"
     ["secure":protected]=> bool(false)
     ["httpOnly":protected]=> bool(true)
 }

然而,当重定向到/cookieget时,我得到了NULL的结果。

浏览器(谷歌浏览器)没有任何"foo"cookie。

我在其他Laravel项目中尝试过同样的代码,效果很好。我不记得更改过任何可能破坏框架的内容。我还更新了框架(到4.2.8),得到了相同的结果。

我感谢你的帮助。

解决:显然,我的routes.php文件就是问题所在。它可能在某个地方有一些"奇怪"的白色字符,所以cookie(因此会话)从未创建。我刚刚创建了一个新的routes.php文件,现在一切都很好。