Laravel: 如何在 public 路由中获取当前用户

Laravel: how to get current user in public route

我对经过身份验证的用户和来宾有相同的路由。如果用户已登录,它将显示与该用户相关的数据。 所以,如果他已经登录,我需要获取当前用户。

我想问: 在public路由中(不使用"auth"中间件),如果他已经登录,如何获取当前用户?

实际上,Auth::user() 将为您提供登录用户。因此,要检索已登录的用户,首先您应该检查用户是否已登录,为此,您可以这样做:

if (Auth::check()) {
    $user = Auth::user();
}

如果你想在 blade 模板中使用它,那么你可以尝试这样的事情(显示登录用户名):

@if(Auth::check())
    {{Auth::user()->name}}
@endif

Check more(寻找Determining If The Current User Is Authenticated)。