Auth :: check在自定义中间件中返回false,这是怎么回事?

问题描述

Auth :: check()在自定义中间件中返回false,这是怎么回事?

enter image description here

enter image description here

解决方法

如果您正在使用将使用会话的默认身份验证设置。您将创建的中间件定义为全局中间件。它们在路由中间件之前运行。 web组中间件为验证工作提供了会话支持。这是一组路由中间件,在全局中间件之后运行,因此您没有访问会话的权限,因此无法进行身份验证。

由于该中间件仅用于根据需要会话的身份验证进行检查,因此应将其附加到web中的$middlewareGroups中间件组中,以便它可以按适当的顺序运行。