当前位置:  开发笔记 > 编程语言 > 正文

在Laravel 5.2中,auth() - > user()为null

如何解决《在Laravel5.2中,auth()->user()为null》经验,为你挑选了2个好方法。

我只是将作曲家更新为Laravel 5.2并且无法查看受密码保护的页面.基本上下面的代码行不起作用.

auth()->user() 

有人可以建议为什么这不起作用?



1> lagbox..:

确保需要会话(Auth使用的)的所有路由都在"web"中间件组后面.

Route::group(['middleware' => 'web'], function () {
    // your routes
});

这是对5.2的新变化.默认情况下,路由没有应用此中间件堆栈.Web中间件组设置会话存储,cookie和csrf保护.



2> Yilmazerhaka..:

在Laravel 5.2升级中,使用Auth的路由必须位于Web中间件组中.

我在app/Http/Kernel.php中解决了这个问题,将Web中间件组移动到全局中间件.

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \App\Http\Middleware\EncryptCookies::class,
    \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class,
    \App\Http\Middleware\VerifyCsrfToken::class
];

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有