为什么要将中间件注册在 StartSession 之后?
教材里说要把自建的EnsureEmailIsVerified
注册在StartSession
之后,请问原理是什么呢?
我试了一下把顺序倒过来,结果是不用验证邮件就直接登录了。
请问这里面的区别是什么?为什么顺序会造成不同的结果?
谢谢!
问得好。StartSession 顾名思义:启动会话,也就是处理程序启动时,用户认证相关的逻辑。如果中间件放在其前面,就会出现使用
$request->user()
判断永远都是 false 的情况。你可以试试看