解决Laravel5.2 Auth认证退出失效的问题

Elaine ·
更新时间:2024-11-13
· 840 次阅读

登录正常,但是退出的时候并没有清掉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); // }); }

以上这篇解决Laravel5.2 Auth认证退出失效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。

您可能感兴趣的文章:Laravel 默认邮箱登录改成用户名登录的实现方法laravel5.4利用163邮箱发送邮件的步骤详解在Laravel框架里实现发送邮件实例(邮箱验证)Laravel 5框架学习之用户认证详解Laravel5.6 Passport实现Api接口认证Laravel5.5中利用Passport实现Auth认证的方法Laravel实现用户多字段认证的解决方法Laravel认证原理以及完全自定义认证详解Laravel多用户认证系统示例详解laravel实现Auth认证,登录、注册后的页面回跳方法laravel框架邮箱认证实现方法详解



laravel

需要 登录 后方可回复, 如果你还没有账号请 注册新账号