【发布时间】:2016-02-26 10:06:27
【问题描述】:
在我的 laravel 项目中,我有一个中间件来检查用户角色。
现在在 routes.php 我有 2 个组,其中一个是管理区域组,我只将中间件应用于该组。
它按预期工作到现在,如果登录的用户具有管理员权限,那么他可以访问管理页面。
但我什至无法访问其他路线,它们都给了我未经授权的错误。即使我没有对这些路由应用中间件。
意味着 CheckRole 中间件在每个请求上全局运行。
其他非管理区域的路由,通过 angularjs 访问。
也许我不知道中间件实际上是如何工作的,而且我遗漏了一些东西。请分享您的知识。
谢谢。
【问题讨论】:
-
你将角色中间件添加到
$middleware数组还是$routeMiddleware数组?$middleware是全球性的 也许用你的代码示例更新你的帖子。特别是您的routes.php、kernel.php和您的CheckRole.php -
我想我明白了,我正在将我的中间件添加到 $middleware 和 $routeMIddleware。我认为 $middleware 数组用于全局中间件调用。请告诉我理论上是正确的。
标签: angularjs laravel-5.1