Laravel 10中已登录用户访问404错误页时Auth::user()返回null的问题咨询
Laravel 10中已登录用户访问404错误页时Auth::user()返回null的问题咨询
大家好,我最近在开发Laravel 10项目时碰到了一个棘手的小问题,想请各位帮忙分析下:
我项目里的主布局layouts.app是所有页面共用的,但页面的头部导航(里面包含了基于Auth::user()判断的用户菜单/登录入口)是通过每个视图单独@include('header')引入的,没有直接整合到主布局文件里。
现在出现的问题是:当用户已经成功登录的情况下,访问一个不存在的URL触发404错误页时,Laravel会渲染errors.404视图,但这个视图里的Auth::user()居然返回了null——本该显示的用户Profile菜单不见了,反而跳出了“Sign In”登录按钮,这完全不符合预期。
这是我header文件里的核心判断代码:
@if (Auth::user()) <li class=""> <a href="{{ route('profile') }}"> <i class="fa fa-user-circle"></i> Profile </a> </li> @else <li class=""> <a href="{{ route('login') }}" class="btn btn-primary text-white"> <i class="fa fa-user-circle"></i> Sign In </a> </li> @endif
我实在搞不懂,明明用户处于登录状态,为什么在404错误页里Auth门面就获取不到用户信息了呢?有没有大佬能帮我找找原因,或者给个可行的解决思路呀?
内容来源于stack exchange
相关产品推荐
相关产品推荐

