Laravelで提供されている基本的なHTTP認証を使用して、自分のWebサイトにログインしています。しかし、私はAuth::Check()
を呼び出すときに、私はいつも私がログインしていていても応答として偽を得る。Laravel Basic HTTP Auth Check False返信
を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();
#.......
}
https://laravel.com/docs/5.1/authentication#http-basic-authenticationの手順に従っていますか? –
Auth :: checkは正確に何が使用されているのですか、コードを投稿できますか? –
@LiamPotterミドルウェアを使用して認証をチェックしているようです。なぜあなたはコントローラでそれをもう一度チェックしていますか?あなたが認証されていないなら、Laravelはあなたをコントローラメソッドの中に入れません。 – parrker9