ReflectionException (-1) Class checkSession 不存在

ReflectionException (-1) Class checkSession does not exist

我有一个中间件 checkSession 用于检查我的 Laravel 项目中的会话。但是,在使用 php artisan serve 服务 Laravel 项目时,该项目已成功服务。但是,在使用 Web 应用程序时,会抛出此错误 ReflectionException (-1) Class checkSession does not exist

我在 SO 上搜索了其他答案。但是 none 似乎适合我的情况。

我还仔细检查了 checkSession class 是否存在于具有正确命名空间的正确中间件目录中。我无法弄清楚为什么会发生错误。请帮忙。

您应该没有注册中间件。定义中间件后,您应该将其注册到一个特定的路由或一组路由,或者对您的应用程序的所有 HTTP 请求。

如果你不注册中间件,它就不知道应该在哪个路由上激活中间件。

如果要为应用程序中的所有路由注册中间件,请将 checkSession 添加到 /app/Http/Kernel.php 文件中的 $middleware 属性。

否则,如果要为某些路由激活中间件,请将密钥关联到中间件并将其添加到上述文件中 $routeMiddleware 属性 中存在的现有中间件.

例如将其附加到 $routeMiddleware 变量:'checkSession' => \App\Http\Middleware\checkSession::class, 现在,您可以使用此 checkSession 键将此中间件与路由定义中的特定路由相关联。

我强烈建议您在实施之前阅读文档。 (https://laravel.com/docs/5.6/middleware#registering-middleware)