Php 验证过滤器之前使用Laravel的问题?
我在laravel中使用过滤器时遇到问题。 这是一段代码Php 验证过滤器之前使用Laravel的问题?,php,laravel,Php,Laravel,我在laravel中使用过滤器时遇到问题。 这是一段代码 Route::get('admin/login', function() { return View::make('admin.login'); }); Route::get('admin/logout', function() { Auth::logout(); return Redirect::to('admin/login'); }); Route::post('admin/login', function()
Route::get('admin/login', function()
{
return View::make('admin.login');
});
Route::get('admin/logout', function()
{
Auth::logout();
return Redirect::to('admin/login');
});
Route::post('admin/login', function()
{
$userdata = array('username' => Input::get('username'),
'password' => Input::get('password'));
if (Auth::attempt($userdata))
{
return Redirect::to('admin');
}
else
{
return Redirect::to('admin/login')->with('login_errors',true);
}
});
Route::get('admin', array('before' => 'auth', function() {
return Redirect::to('admin');
}));
Route::filter('auth', function()
{
if (Auth::guest()) return Redirect::to('admin/login');
});
问题是当我打开/admin时,它将我重定向到admin/login,这很好。
现在,如果我输入了正确的用户名和密码,它会将我带到/admin页面,但它会再次将我重定向回admin/login页面。
我想,每当我想让它将我重定向到/admin时,就会运行beforeauth过滤器,并将我带回admin/login
请帮助根据我的说法,这里有一个重定向循环:
Route::get('admin', array('before' => 'auth', function() {
return Redirect::to('admin');
}));
<>你试图重定向到管理页面,如果AUTH过滤器通过,但这是同一条路线。你没有认为你的AUTH尝试失败了吗?不,它没有失败。它不会在其他部分进行。我检查了它,然后将一些结果输出添加到过滤器,以检查它是否是实际问题。一般来说,你的代码应该可以工作,所以这是你的事情。我在过滤器中返回了Hello,它工作了,就是我在/admin视图中得到了Hello,那么应该用什么来代替它呢?我必须说,这对我非常有帮助。该死。