使用内置的auth脚手架,当我通过组将中间件guest
分配到我的注销路由时,注销不起作用。
示例:
Route::group(['middleware' => 'guest'], function () {
// login routes
Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('login', 'Auth\LoginController@login');
Route::get('logout', 'Auth\LoginController@logout')->name('logout');
// password reset routes
Route::get('password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
Route::post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
Route::get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
Route::post('password/reset', 'Auth\ResetPasswordController@reset');
});
注销根本不起作用,不会引发任何错误。
我已从所有控制器__construct()
方法中删除了中间件。
答案 0 :(得分:1)
尝试将其排除在外:
Route::group(['middleware' => 'guest'], function () {
// login routes
Route::get('login', 'Auth\LoginController@showLoginForm')->name('login');
Route::post('login', 'Auth\LoginController@login');
});
Route::get('logout', 'Auth\LoginController@logout')->name('logout')->middleware(['web', 'guest']);