FreshMeatInIT
@FreshMeatInIT
В замкнутом кругу

Laravel: почему редирект на логин даже после авторизации?

При попытки залогиниться, или зарегистрироваться, перенаправляет на логин, при том, как видно на картинке ниже. 5cb8a364acbe5214429099.png
Вот файлы, которые участвуют в процессе аутентификации:
1) Маршруты: web.php
Auth::routes();
Route::get('doc/', function () {
    return view('welcome');
});
Route::get('/confirm', function()
{
    return view('confirm');
})->name('confirm');
Route::post('/confirm', 'EmployeeController@store')->name('addworker');
Route::get('users/{id}', 'EmployeeController@show')->where('id', '[0-9]+')->name('account');
Route::get('/home', 'HomeController@index')->name('home');

2. В LoginController и RegisterController всё стандартное, кроме redirectTO
protected function redirectTo()
    {
        return route('account',['id'=> auth()->user()->id]);   
    }

3. Моё кастомное middleware
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
use App\Employee;
class CheckConfirm
{
    public function handle($request, Closure $next)
    {
        if(Auth::check())           //если пользователь авторизован
        {
            $id = Auth::id();        //сохраняем его id
            $empl = Employee::where('user_id','=', $id)->first();
            dump($empl);
            if($empl == null)// если запрос вернул null
            {
                return redirect()->route('confirm');                    //заставляем его конформится
            }
            else
            {                
                dump($empl);
                return $next($request);                     //то пропускаем пользователя дальше
            }
        }
        else
        {
            return redirect()->route('login');
        }
    }
}

4. Методы контроллера EmployeeController.php
public function __construct()
    {
        $this->middleware('auth');
        $this->middleware('confirmated');
    }
    public function show($id)
    {
        return view('account');
    }

Я думал, что меня спасёт создание проекта заново, но судя по всему- не спасло, я уже отчаялся бороться с этой аутентификацией, которая непонятно почему ломается
  • Вопрос задан
  • 1154 просмотра
Пригласить эксперта
Ответы на вопрос 2
@NubasLol
Очевидно же, что ваш middleware это делает
Ответ написан
@Prego666
Пробовал в конструкторе employer делать вывод Auth::user()?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы