登录正常,但是退出的时候并没有清掉session,退出后还是处于登录状态。解决方法如下:
Route::group(['namespace' => 'Admin', 'middleware' => 'auth'], function() {
Route::resource('admin/post', 'PostController');
});
// 登陆
Route::get('auth/login', 'Auth\AuthController@getLogin');
Route::post('auth/login', 'Auth\AuthController@postLogin');
// 5.2版本这里的方法需要写成logout,因为在中间件中是这么定义的
public function __construct()
{
$this->middleware($this->guestMiddleware(), ['except' => 'logout']);
}
// 路由中的方法要跟上述一致
Route::get('auth/logout', 'Auth\AuthController@logout');
AuthController.php中的
// 登录成功后跳转地址
protected $redirectTo = 'admin/post';
// 退出后跳转地址
protected $redirectAfterLogout = 'auth/login';
参考 http://stackoverflow.com/questions/34479994/laravel-5-2-authlogout-is-not-working
调试过程中在AppserviceProvider的boot方法里添加输出sql也会导致类似的错误,所以在登录调试时,尽量不要这样做
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
// \DB::listen(function($sql) {
// dump($sql->sql);
// });
}
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/6625/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料