Laravel 9密码重置后无法登录,请求排查问题
问题排查与解决
你的密码重置流程中,重置密码表单提交的路由错误,这是导致新密码无法生效的核心原因:
在ResetPassword视图里,表单的action属性错误指向了password.email路由(对应发送重置邮件的接口),而正确的应该是指向处理密码更新的password.update路由。
修正后的ResetPassword视图代码:
<div class="row mt-3 mx-5"> <div class="col-12 col-md-6 namelabel"> <form action="{{route('password.update')}}" method="post"> @csrf <div class="mb-3"> <label for="email" class="form-label">Email</label> <input type="email" class="form-control" name="email"> </div> <div class="mb-3"> <label for="password" class="form-label">Password</label> <input type="password" class="form-control" name="password"> </div> <div class="mb-3"> <label for="password_confirmation" class="form-label">Conferma password</label> <input type="password" class="form-control" name="password_confirmation"> </div> <div class="mb-3"> <input type="hidden" class="form-control" name="token" value="{{$token}}" > </div> <button type="submit" class="btn btn-primary mb-5">Invia</button> </form> </div> </div>
额外检查点(可选):
- 确认你的
User模型继承了Illuminate\Foundation\Auth\User基类,该类已内置密码哈希处理逻辑(你控制器中手动使用Hash::make的写法也是正确的)。 - 重置密码后,清除浏览器缓存或重启浏览器尝试登录,避免旧会话干扰验证。
内容的提问来源于stack exchange,提问作者Sarah
相关产品推荐
相关产品推荐

