Laravel 5.4 Auth API路由

时间:2017-06-01 15:15:00

标签: php laravel api authentication laravel-5

我正在尝试构建API身份验证,我为它定义了一个控制器,还有另一个用于Web登录的控制器。我在 config / api 中配置了2个不同的身份验证,因为有两种类型的用户,即将使用API​​的用户,另一种是Web用户。这是警卫配置:

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'token',
        'provider' => 'users',
    ],
    'users-api' => [
        'driver' => 'token',
        'provider' => 'users-api',
    ],
    'users' => [
        'driver' => 'session',
        'provider' => 'usuarios',
    ],
],

每当我尝试访问 / api / login 时,我会被重定向到/ login(这是Web视图,这就是我在api.php路由文件:

Route::group(['middleware' => ['auth:users-api']], function () {
     Route::get('login','api\AuthenticationController@authenticate');
     Route::get('register','api\AuthenticationController@register');
});

当我使用中间件时,我尝试从Controller构造中调用它,如下所示:$this->middleware('auth:users-api');

但是我仍然被重定向,如果我评论该行,或者如果我不在路由文件中使用中间件,我不会被重定向但我需要它来指定auth将使用哪个表。如果您还需要其他任何东西来帮我解决,我很乐意提供。提前谢谢。

1 个答案:

答案 0 :(得分:0)

我发现本教程非常有用,在一个应用程序中执行多个Auths时需要考虑很多步骤

https://ysk-override.com/blog/

希望有所帮助