修改权限中间件
This commit is contained in:
parent
07442c8292
commit
44eba6b389
@ -24,23 +24,17 @@ class PermissionsMiddleware
|
|||||||
*/
|
*/
|
||||||
public function handle(Request $request, \Closure $next)
|
public function handle(Request $request, \Closure $next)
|
||||||
{
|
{
|
||||||
// Get 请求
|
|
||||||
if ($request->isGet() && config('catch.permissions.is_allow_get')) {
|
|
||||||
return $next($request);
|
|
||||||
}
|
|
||||||
|
|
||||||
$rule = $request->rule()->getName();
|
$rule = $request->rule()->getName();
|
||||||
|
|
||||||
if (!$rule) {
|
if (!$rule) {
|
||||||
return $next($request);
|
return $next($request);
|
||||||
}
|
}
|
||||||
|
// 模块忽略
|
||||||
[$module, $controller, $action] = $this->parseRule($rule);
|
[$module, $controller, $action] = $this->parseRule($rule);
|
||||||
|
|
||||||
if (in_array($module, $this->ignoreModule())) {
|
if (in_array($module, $this->ignoreModule())) {
|
||||||
return $next($request);
|
return $next($request);
|
||||||
}
|
}
|
||||||
|
// 用户未登录
|
||||||
$user = $request->user();
|
$user = $request->user();
|
||||||
if (!$user) {
|
if (!$user) {
|
||||||
throw new PermissionForbiddenException('Login is invalid', Code::LOST_LOGIN);
|
throw new PermissionForbiddenException('Login is invalid', Code::LOST_LOGIN);
|
||||||
@ -49,6 +43,10 @@ class PermissionsMiddleware
|
|||||||
if ($request->user()->id === config('catch.permissions.super_admin_id')) {
|
if ($request->user()->id === config('catch.permissions.super_admin_id')) {
|
||||||
return $next($request);
|
return $next($request);
|
||||||
}
|
}
|
||||||
|
// Get 请求
|
||||||
|
if ($request->isGet() && config('catch.permissions.is_allow_get')) {
|
||||||
|
return $next($request);
|
||||||
|
}
|
||||||
// toad
|
// toad
|
||||||
$permission = $this->getPermission($module, $controller, $action);
|
$permission = $this->getPermission($module, $controller, $action);
|
||||||
if (!$permission || !in_array($permission->id, Cache::get(CatchCacheKeys::USER_PERMISSIONS . $user->id))) {
|
if (!$permission || !in_array($permission->id, Cache::get(CatchCacheKeys::USER_PERMISSIONS . $user->id))) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user