【问题标题】:Laravel session not destoryingLaravel 会话没有破坏
【发布时间】:2018-07-03 08:18:23
【问题描述】:

我已经阅读了很多堆栈问题,但我仍然无法解决我的问题 我有一些数组数据,我将在成功登录后存储在会话中

 session(['menuList' => $menuList]);

 session(['pageList' => $fullPage]);

当用户单击注销按钮时,我将执行以下操作

 session_destroy();
            $request->session()->forget('pageList');
            $request->session()->forget('menuList');
            Session::flush();
            $request->session()->flush();
            Auth::logout();

但如果我在登录页面中打印会话值会话仍然没有被破坏。我不知道为什么它不破坏

即使我给了

public function __construct()
{
    session_start();
}

谁能帮我解决这个问题

【问题讨论】:

  • Laravel 不使用原生会话的东西,session_start()session_destroy() 不会影响 Laravel 会话。
  • @sisve.oh 好的。但我添加只是因为会话刷新不起作用,即使会话也忘记了

标签: php laravel laravel-5 laravel-5.2


【解决方案1】:

使用$request->session() 用于当前请求,对于您只需要session() 的所有请求,使用如下

session()->forget('pageList');

【讨论】:

  • @即使我签入了隐身窗口
  • @DigitalDrifter :它将删除所有不特定的数据
  • @DigitalDrifter@C2486.finaly 当我在中间件外部添加注销路由时已修复。
  • @vision : 哪个middleware ?
  • @– C2486 我的注销路由在用户身份验证中间件内部。这是我添加到身份验证检查的客户中间件
【解决方案2】:

我通过在中间件用户会话之外添加注销路由解决了我的问题

【讨论】:

    猜你喜欢
    • 2017-02-13
    • 2013-09-15
    • 2011-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-02
    • 1970-01-01
    相关资源
    最近更新 更多