Я использую базовую HTTP-аутентификацию, предоставленную в Laravel, чтобы войти на мой сайт. Однако, когда я вызываю Auth::Check()
я всегда получаю false как ответ, хотя я вошел в систему.
Does Auth::Check()
не работает с базовой моделью проверки подлинности, а если нет, есть ли способ проверить базовую аутентификацию, чтобы узнать, вошел ли пользователь в систему?
Это мой класс пользователя:
namespace App; use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable { /** * The attributes that are mass assignable. * * @var array */ protected $fillable = [ 'email', 'password', ]; /** * The attributes excluded from the model's JSON form. * * @var array */ protected $hidden = [ 'password', 'remember_token', ]; public function getRememberToken() { return $this->remember_token; } public function setRememberToken($value) { $this->remember_token = $value; } public function getRememberTokenName() { return 'remember_token'; } }
Это сегмент кода, в котором я устанавливаю фильтр аутентификации для использования
$this->middleware('auth.basic', ['only' => ['create', 'store', 'edit', 'update', 'destroy']]);
И это мой вызов Auth::Check()
(всегда печатает 0):
public function show($id) { echo \Auth::check() ? '1' : '0'; die(); #....... }
Мои маршруты:
Он изменился в версии 5.2.
Если вы будете использовать сеанс, csrf, cookie ext. вам следует использовать «сетевое» промежуточное программное обеспечение, подобное этому в ваших маршрутах:
Route::group(['middleware' => ['web']], function () { // });
И вы можете видеть в своем проекте новый файл kernel.php следующим образом:
/** * The application's route middleware groups. * * @var array */ protected $middlewareGroups = [ 'web' => [ \App\Http\Middleware\EncryptCookies::class, \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class, \Illuminate\Session\Middleware\StartSession::class, \Illuminate\View\Middleware\ShareErrorsFromSession::class, \App\Http\Middleware\VerifyCsrfToken::class, ], 'api' => [ 'throttle:60,1', ], ];
Дополнительная информация: https://laravel.com/docs/5.2/releases