首页 > 解决方案 > Laravel 5.8 重定向回来,消息未将消息传递到前端

问题描述

我在方法的末尾有一个带有此重定向的控制器:

    // Setup Response message
    $msg = [
        'type' => 'success',
        'value' => 'Your action was successful',
    ];

    return redirect()->back()->with('message', $msg);

响应如下所示:

array:5 [▼
  "_flash" => array:2 [▶]
  "_token" => "stMmai4OuWI2QlhYGNzxSDyb1qINLfD3RWsoM8mx"
  "_previous" => array:1 [▶]
  "url" => []
  "login_web_59ba36addc2b2f9401580f014c7f58ea4e30989d" => 2
]

我很困惑是什么导致消息没有闪现到会话中。

如果我这样做:

session()->flash('message', $msg);

dd(session()->all()); 

    // Setup Response message
    $msg = [
        'type' => 'success',
        'value' => 'Your action was successful',
    ];

    return redirect()->back()->with('message', $msg);

在重定向之前,会话包含消息。

我什至将两条路由(POST 和 GET)移到了所有 Auth 组/中间件之外,结果相同。

什么可以清除会话消息?

标签: phplaravelsessionlaravel-5.8

解决方案


@Udo 是对的,Laravel 5.8 似乎发生了变化。这有效:

redirect()->back()->with('message', $msg);

推荐阅读