#php #laravel #cookies #laravel-7
#php #laravel #файлы cookie #laravel-7
Вопрос:
У меня возникла проблема с удалением файла cookie в laravel. Я устанавливаю файл cookie при входе в систему как ‘sessionToken’, и как только пользователь выходит из системы, я очищаю сеанс, обновляю столбец sessionToken до null и забываю файл cookie. Тем не менее, я все еще вижу файл cookie, когда использую «document.cookie» в консоли браузера.
Как я могу уничтожить этот файл cookie и его значение? Я чувствую, что это ненормальное поведение, но я могу ошибаться.
public function logout(Request $request, User $_id)
{
Auth::logout();
$user = User::where('id', $request->$_id)->first();
$user->sessionToken = null;
$user->save();
Session::flush();
Cookie::queue(Cookie::forget('sessionToken'));
return redirect()->route('cookie-login')->withCookie(Cookie::forget('sessionToken'));
}
Ответ №1:
После долгих поисков я нашел обходной путь для удаления файла cookie. Установка значения в пустую строку полностью удаляет cookie из окна браузера.
$cookieValue = '';
Cookie::queue(Cookie::make('cookie', $cookieValue))
Ответ №2:
Вы также можете сделать это, это удалило файл cookie из браузера.
Cookie::queue(Cookie::forget('name'));