Почему Auth :: try всегда возвращает false в Laravel 5.3?

Я новичок в Laravel. Я пытаюсь использовать Multiple Auth в Laravel 5.3, а файл auth.php:

<?php return [ */ 'defaults' => [ 'guard' => 'web', 'passwords' => 'users', ], 'guards' => [ 'web' => [ 'driver' => 'session', 'provider' => 'users', ], 'api' => [ 'driver' => 'token', 'provider' => 'users', ], 'courier' => [ 'driver' => 'session', 'provider' => 'couriers', ], 'client' => [ 'driver' => 'session', 'provider' => 'clients', ] ], 'providers' => [ 'couriers' => [ 'driver' => 'eloquent', 'model' => App\Courier::class, ], 'clients' => [ 'driver' => 'eloquent', 'model' => App\Client::class, ], 'users' => [ 'driver' => 'eloquent', 'model' => App\User::class, ] ], 'passwords' => [ 'couriers' => [ 'provider' => 'couriers', 'table' => 'password_resets', 'expire' => 60, ], 'clients' => [ 'provider' => 'clients', 'table' => 'password_resets', 'expire' => 60, ], ], ]; 

Затем, когда я храню Клиенты или Курьеры в БД, я использую bcrypt для пароля (Принесите также функцию Hash::make() для паролей). Например, моя модель Courier:

 <?php namespace App; use Illuminate\Foundation\Auth\User as Authenticatable; class Courier extends Authenticatable { [..] public function setPasswordAttribute($pass){ $this->attributes['password'] = bcrypt($pass); } [..] } 

И при обновлении курьера в моем контроллере у меня есть:

 public function update(Request $request, $id) { $fieldsCourier = $request->all(); $courier = Courier::find($id); if( isset($fieldsCourier['password']) ) $fieldsCourier['password'] = bcrypt($fieldsCourier['password']); if( $courier->update($fieldsCourier) ) $courier = Courier::find($id); } 

У меня есть метод под названием authenticate, но попытка метода всегда возвращает false (invalid_credentials). Даже при этом отправьте действительные учетные данные .. Это мой код:

 public function authenticate(Request $request) { $credentials = $request->only('email', 'password'); try { if ( auth()->guard('courier')->attempt($credentials) ){ $user = Auth::guard('courier')->user(); } else { return response()->json(['error' => 'invalid_credentials'], 401); } } catch (JWTException $e) { return response()->json(['error' => 'could_not_create_token'], 500); } return response()->json(compact('user')); } 

Я не знаю, что я делаю неправильно. Что-нибудь я делаю неправильно?