Laravel - 获取经过身份验证的用户

时间:2018-06-17 16:42:12

标签: php laravel authentication vue.js

我有一个导航栏,我尝试显示某些内容,具体取决于用户是否经过身份验证。

所以我有一个登录表单,当我使用电子邮件/密码的axios.post('/ login')时,我处理潜在的错误。

我的UserController中还有一个方法可以通过Auth :: user()获取经过身份验证的用户(如果有的话),就像文档说的那样,但是这个方法总是返回一个空对象......

public function getUser() {
    $user = Auth::user();
    Log::info($user);
    return $user;
}

此方法总是返回[2018-06-17 16:29:26] local.INFO:

但是陌生的东西(比如电视节目)是我尝试使用'/ admin'路线的地方,我的中间件也使用'Auth :: user()'来确定用户的角色是否是'用户'或'admin','Auth :: user()'方法很好地回报了用户......

我被困了...... 如果有人遇到同样的问题,请告诉我如何解决,或者如果有人想要查看更多代码,请告诉我,我很乐意向您展示更多证据。

谢谢,

2 个答案:

答案 0 :(得分:0)

public function getUser() {
    $user = Auth::user()->name;    
    return $user;
}

使用Auth::user()->name;在导航栏上返回您的用户名。

答案 1 :(得分:0)

您必须向Log::info()提供更多信息,例如$user->name$user->id的名称或ID。

您还可以使用该ID,使用它搜索并获取用户的信息。 你应该有一个适当的日志模式,按模式我的意思是正确的日志记录。传递整个对象$user将不起作用。