php - laravel5.4 mencetak Auth::check(); dalam pembina kelas dan mengembalikan palsu, dan mencetaknya dalam kaedah kelas dan mengembalikan benar
怪我咯
怪我咯 2017-05-16 12:58:35
0
2
1126

Tolong, tolong! laravel5.4 mencetak Auth::check(); dalam pembina kelas dan mengembalikan false, dan mencetaknya dalam kaedah kelas dan mengembalikan benar

Bergambar:

mengembalikan palsu

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(2)
小葫芦

Sebab

Masalah ini wujud sejak Laravel 5.3 mula mengelompokkan laluan. Sebabnya ialah middleware tidak berjalan apabila konstruk dijalankan.

Penyelesaian

use Closure;

class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;

    protected $user;

    public function __construct(Request $request)
    {
        $this->middleware(function($request,Closure $next){

            $this->user = Auth::user();

            return $next($request);

        });

    }
}
迷茫

fungsi __bina(Permintaan $permintaan)

{
    $this->middleware(function ($request, $next) {
        dd(Auth::check());
    });
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan