首页 > 解决方案 > Laravel 身份验证无法注销并且用户会话始终已满

问题描述

我使用 Laravel 5.7 中的默认身份验证,并对登录页面显示进行了一些更改。登录了好几次都可以正常运行了,呆了一天后,再次打开我的应用,发现一个问题,我上次使用的用户仍然登录(没有注销/用户会话保留),即使已经重新启动。当我尝试注销(使用注销功能)时,可能会出现错误

MethodNotAllowedHttpException
No message

我不确定,这是否是“记住我”功能的错误。我一直在寻找解决方案,但没有找到,可能是因为我的查询不正确。

登出功能 错误登出功能

我的登录表格 登录表单

这是我的路线 我的路线

路线清单 1 路线清单

路线清单

路线清单 2

标签: phplaravelauthenticationlaravel-5.7

解决方案


Laravel 5.4+ 使用注销方法,因此您应该发布一个表单来注销post,而不是简单的 url ( ) 请求。get

尝试这样的事情

<a href="#" onclick="document.getElementById('logout-form').submit();"> Logout</a>
<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
    {{ csrf_field() }}
</form>

推荐阅读