hyperf-casbin icon indicating copy to clipboard operation
hyperf-casbin copied to clipboard

hyperf3.0 删除全部权限 ErrorException: Undefined property: Swoole\Coroutine\Http\Server::$setting

Open spaceBlack opened this issue 1 year ago • 3 comments

//model ** [request_definition] r = sub, obj, act

[policy_definition] p = sub, obj, act

[role_definition] g = _, _

[policy_effect] e = some(where (p.eft == allow))

[matchers] m = g(r.sub, p.sub) && r.obj == p.obj && r.act == p.act ** //调用接口 Enforcer::deletePermissionsForUser($id); //报错 [ERROR] ErrorException: Undefined property: Swoole\Coroutine\Http\Server::$setting in /data/project/vendor/donjan-deng/hyperf-casbin/src/Process/CasbinProcess.php:34 Stack trace: #0 /data/project/vendor/donjan-deng/hyperf-casbin/src/Process/CasbinProcess.php(34): Hyperf\ExceptionHandler\Listener\ErrorExceptionHandler::Hyperf\ExceptionHandler\Listener{closure}() #1 [internal function]: Donjan\Casbin\Process\CasbinProcess->Donjan\Casbin\Process{closure}() #2 /data/project/vendor/hyperf/redis/src/RedisConnection.php(197): Redis->subscribe() #3 /data/project/vendor/hyperf/redis/src/RedisConnection.php(83): Hyperf\Redis\RedisConnection->retry() #4 /data/project/vendor/hyperf/redis/src/Redis.php(40): Hyperf\Redis\RedisConnection->__call() #5 /data/project/vendor/donjan-deng/hyperf-casbin/src/Process/CasbinProcess.php(38): Hyperf\Redis\Redis->__call() #6 /data/project/vendor/hyperf/process/src/AbstractProcess.php(134): Donjan\Casbin\Process\CasbinProcess->handle() #7 /data/project/vendor/hyperf/utils/src/Coroutine.php(67): Hyperf\Process\AbstractProcess->Hyperf\Process{closure}() #8 {main}

spaceBlack avatar Mar 23 '23 04:03 spaceBlack

@donjan-deng

hsluoyz avatar Mar 23 '23 08:03 hsluoyz

检查redis是否连接成功,推荐使用username对用户进行授权,而不是id

donjan-deng avatar Mar 27 '23 01:03 donjan-deng

这个关于Server类直接查看hyperf的autoload下的server配置就好,你的type应该引用的是CoroutineServer 去掉或者改成Server就好了

dygin avatar Nov 23 '23 03:11 dygin