Laravel重定向到POST

时间:2018-03-23 23:31:23

标签: php laravel laravel-5

我正在使用Laravel 5.5并试图实现以下场景: 用户尝试使用POST提交表单,但如果未登录,则会显示登录屏幕。

我的问题是登录后我使用return redirect()->intended('dashboard');继续我中断的用户流程。但重定向会将请求转为GET

在面对登录界面之前,是否有合理的方法存储初始表单中的数据,所以我可以在登录后重定向后恢复它?

1 个答案:

答案 0 :(得分:0)

在您的中间件中执行此操作

if (Auth::check()) {
    return $next($request);
}else if (!Auth::check() ){
    $url = Request()->path();
    Session::put('loginRedirect', $url);
    return redirect('/login');
}

在LoginController中

if(Session::get('loginRedirect')){
    $url = Session::get('loginRedirect');
    Session::forget('loginRedirect');
    return Redirect::intended(url($url));
}
return Redirect::intended(route('user.get_home'));