محسن
4 سال پیش توسط محسن مطرح شد
1 پاسخ

پیدا کردن guard مربوط به روت

سلام.من تو سایتم چند تا guard دارم.حالا میخوام هرروتی که کاربر درخواست میده و احراز هویت نشده رو به صفحه لاگین خودش هدایت کنم.

تو middleware چک کردم و این مورد رو تست کردم(this->auth->guards):

 protected function redirectTo($request)
    {
        if (! $request->expectsJson()) {
            switch ($this->auth->guards){
                case 'admin':
                    return route('administrator.login');
                    break;
                default:
                    return route('login');
            }
        }
    }

ولی Guard به صورت protected هست و دسترسی بهش نیست.کسی میتونه راهنماییم کنه؟
در اصل من میخوام guard مربوط به روت رو بگیرم


ثبت پرسش جدید
coarad supp
تخصص : برنامه نویس لاراول
@coaradsupp 4 سال پیش آپدیت شد
0

سلام
توی فایل exceptions/handlers

protected function unauthenticated($request, AuthenticationException $exception)
    {
        if ($request->expectsJson()) {
            return response()->json(['message' => $exception->getMessage()], 401);
        }

        $guard = Arr::get($exception->guards(), 0);

        switch ($guard) {
            case 'user':
                return redirect()->guest(route('user.loginForm'));
                break;
            case 'guard2':
                return redirect()->guest(route('guard2.loginForm'));
                break;
            default:
                return redirect()->guest(route('user.loginForm'));
                break;
        }
    }

میتونید بهتر مدیریت کنید


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام