guardName = $guard; if (!$this->checkPermissionByUrl()) { return $this->fail(StarterResponseCode::RBAC_FAIL); } return $next($request); } /** * 权限校验 * @param $request * @return bool */ public function checkPermissionByUrl() { $user = Auth::guard($this->guardName)->user(); $permissions = $user->getAllPermissions(); //校验权限 foreach ($permissions as $permission) { if (!$permission->api_prefix) continue; if (Str::startsWith(request()->route()->uri(), $permission->api_prefix)) { return true; } }; return false; } }