Php Laravel 5.4认证API路由

Php Laravel 5.4认证API路由,php,laravel,api,authentication,laravel-5,Php,Laravel,Api,Authentication,Laravel 5,我正在尝试构建一个API身份验证,我为它定义了一个控制器,还有一个用于web登录。我在config/api中配置了两种不同的身份验证,因为有两种类型的用户,一种是将要使用api的用户,另一种是web用户。这是卫兵配置: 'guards' => [ 'web' => [ 'driver' => 'session', 'provider' => 'users', ], 'api' => [ 'dr

我正在尝试构建一个API身份验证,我为它定义了一个控制器,还有一个用于web登录。我在config/api中配置了两种不同的身份验证,因为有两种类型的用户,一种是将要使用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 routes文件中定义路由的:

Route::group(['middleware' => ['auth:users-api']], function () {
     Route::get('login','api\AuthenticationController@authenticate');
     Route::get('register','api\AuthenticationController@register');
});
当我使用中间件时会发生这种情况,我试着从控制器构造中调用它,如下所示:
$this->middleware('auth:users-api');


但是我仍然会被重定向,如果我评论这行或者如果我没有使用routes文件中的中间件,我不会被重定向,但我需要它来指定auth将使用哪个表。如果您需要其他帮助我解决它,我很乐意提供。提前感谢。

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

希望对您有所帮助

本教程的哪些部分特别适用于原始问题,即重定向问题?