【发布时间】:2016-06-11 20:08:57
【问题描述】:
我正在使用 laravel 5.1 和模块化包。 在我的控制器中,我使用以下登录方法:
public function postLogin(Request $request)
{
$email = $request->input('email');
$password = $request->input('password');
if (Auth::attempt(['email' => $email, 'password' => $password])) {
return redirect()->intended('admin/dashboard');
}
return redirect('/login')->withErrors([
'email' => 'These credentials do not match our records.']);
}
我的路线:
Route::group(array('module' => 'Admin', 'namespace' => 'App\Modules\Admin\Controllers'), function() {
Route::get('admin/dashboard', [
'middleware' => 'auth',
'uses' => 'AdminController@index'
]);
}}
我的控制器:
public function index()
{
return view("Admin::index");
}
我的中间件/身份验证:
public function handle($request, Closure $next)
{
if ($this->auth->guest()) {
if ($request->ajax()) {
return response('Unauthorized.', 401);
} else {
return redirect()->guest('auth/login');
}
}
return $next($request);
}
这可以在登录后将我重定向到索引视图。 当用户未登录时,仍然可以通过访问url:localhost/admin/dashboard来访问索引视图。
如何将用户重定向到自定义页面,该页面向用户显示错误,即当他未登录时无法访问 url localhost/admin/dashboard?
有什么想法吗?谢谢
【问题讨论】: