У меня есть админ-панель, которую я защищаю аутентификацией пользователя.Как только я пытаюсь получить к нему доступ, он перенаправляет меня в форму входа в систему, которая использует промежуточное ПО «guest» (это ожидаемое поведение).Как только я пытаюсь войти в систему, она работает как чудо, перенаправляет меня на панель администратора и создает объект Auth (я могу получить имя).Однако, если я нажму на любую ссылку внутри панели или нажму F5, она перенаправит меня обратно в форму входа.Для проверки того, что произошло, я удалил защиту промежуточного программного обеспечения 'auth' из панели администратора, и она выдает ошибку при попытке получить свойство Auth :: user () -> name.
Trying to get property 'name' of non-object
Итак, я предполагаю, что он уничтожает объект Auth при каждом обновлении страницы, но я не понимаю, откуда происходит это поведение.Я использую промежуточное программное обеспечение Auth по умолчанию с LoginController, предоставленным в документации (с некоторыми изменениями):
<?php
namespace App\Http\Controllers\Authentication;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class LoginController extends Controller
{
public function authenticate(Request $request){
$email = $request->input('email');
$password = $request->input('password');
$remember = $request->input('remember');
if (Auth::attempt(['email' => $email, 'password' => $password], $remember)) {
return redirect()->intended('dashboard');
}
}
public function index(){
return view('auth.login');
}
}
Все маршруты в панели администратора находятся внутри группы в моем файле маршрутов:
Route::middleware(['auth'])->group(function () {
//All of the admin routes here
});
Маршрут входа защищен промежуточным программным обеспечением «гостя», поэтому ни один аутентифицированный пользователь не может получить доступ к форме входа.
Пожалуйста, попросите меня опубликовать любой код, который, по вашему мнению, может быть полезен, я 'Я довольно новичок в Laravel и не знаю, что написать.