我为Laravel使用多次授权...
这是我的用户的lougout功能
LoginController
public function logout()
{
Auth::guard('web')->logout();
return redirect('/');
}
AdminloginController
public function logout()
{
Auth::guard('web')->logout();
return redirect('/');
}
这是我的路线
Route::get('/enseignant/logout', 'Auth\LoginController@Elogout')->name('enseignant.logout');
Route :: get(' / administration / logout',' Auth \ AdminloginController @ logout') - > name(' admin.logout');
视图中的所有方法
<a href="{{ route('admin.logout') }}" class="btn btn-default btn-flat"
onclick="event.preventDefault();
document.getElementById('logout-form').submit();">
Logout
</a>
<form id="logout-form" action="{{ route('admin.logout') }}" method="POST" style="display: none;">
{{ csrf_field() }}
</form>
该功能正常但当我点击按钮时出现此错误:
RouteCollection.php第233行中的MethodNotAllowedHttpException
答案 0 :(得分:2)
您的路线仅接受GET
方法,但在表单中,您使用POST
指定。我认为这是问题的根源。错误消息还表明。
建议您使用POST进行注销,就像您一样。所以,只需将有问题的路线改为......
Route::post(...);
...应该修正错误。