在laravel 5中使用中间件重定向循环

时间:2015-12-10 12:28:58

标签: redirect laravel-5 laravel-middleware

//Route.
Route::get('user/program', ['as' => 'chose.program', function(){
   dd('brake');
}]);

中间件代码:

public function handle($request, Closure $next)
    {
        if(Auth::check()){
            $v = Opt::user_get('goal_chosen');
            if(!$v){
                return redirect()->route('chose.program')->with('warning', 'Please chose your program.');
            }
        }
        return $next($request);
    }

if语句中的代码导致循环重定向。而且'刹车'没有出现; Firefox浏览器说"页面没有正确重定向"。

你能帮助我吗?

非常感谢!

2 个答案:

答案 0 :(得分:0)

从你能够理解的陈述中,你也可以为你提到的路线放置中间件。所以交叉检查一次。如果您显示路线文件的中间应用部分,可以在这种情况下帮助您更多。

答案 1 :(得分:0)

重定向到退回请求:

return redirect()->back()->with('warning', 'Please chose your program.');