Fel*_*eña 13 php laravel laravel-5 laravel-5.2 laravel-authorization
我正在Laravel 5.2中构建一个非常简单的应用程序,但是当使用AuthController的操作注销时,它只是不起作用.我有一个导航栏,它会检查Auth::check()并在调用注销操作后不会更改.
我在routes.php文件中有这个路由:
Route::get('users/logout', 'Auth\AuthController@getLogout');
它在外面
Route::group(['middleware' => ['web']], function () 声明.
我也尝试在AuthController.php文件的末尾添加跟随操作.
public function getLogout()
{
$this->auth->logout();
Session::flush();
return redirect('/');
}
Run Code Online (Sandbox Code Playgroud)
你有什么想法?
编辑1
如果我清除Google的Chrome缓存,则可以正常运行.
Azt*_*gic 37
我在Laravel 5.2中也有类似的问题.你应该改变你的路线
Route::get('auth/logout', 'Auth\AuthController@logout');
Run Code Online (Sandbox Code Playgroud)
或者在AuthController构造函数中添加
public function __construct()
{
$this->middleware('guest', ['except' => ['logout', 'getLogout']]);
}
Run Code Online (Sandbox Code Playgroud)
这对我有用.
小智 6
使用下面的代码
Auth::logout();
Run Code Online (Sandbox Code Playgroud)
要么
auth()->logout();
Run Code Online (Sandbox Code Playgroud)