Laravel - 从特定的身份验证保护中获取用户

时间:2017-02-25 13:35:21

标签: php laravel api authentication

我想为我的网络应用程序创建一个API。在此API中,用户由令牌标识。所有的工作,但在我的控制器,当我想得到用户时,我必须写这样的东西:

Auth::guard('api')->user();

每次我必须使用此方法来获取用户。我想使用类似$request->user()的内容,但此选项会返回null :(

如果我想从请求用户处获得该怎么办?谁能帮我?

1 个答案:

答案 0 :(得分:4)

你还需要将守卫传递给Request::user()方法。

$user = $request->user('api');

或者您可以为API路由组设置默认保护:

Route::group(['domain' => 'api.app.dev', 'guard' => 'api'], function () {
    // ...
});

这样,您只需要设置一次,每次调用Auth::user()之类的内容时,都会根据之前设置的警卫获取用户对象。

有关该主题的更多信息,请查看此文章:
Setting the Guard Per Route in Laravel