Tencent / Biny

Biny is a tiny, high-performance PHP framework for web applications
BSD 3-Clause "New" or "Revised" License
1.69k stars 258 forks source link

关于privilegeService的一些使用疑问 #41

Closed lordGuan closed 7 years ago

lordGuan commented 7 years ago

我打算使用privilegeService做一些类似前置拦截器的功能(验证每个ajax请求的token),自定义的验证方法(// privilegeService.php)返回false时,我注意到只是call_user_func_array,那么callback做什么好像都影响不到整个流程,没有else甚至会直接throw 6001。就我的使用流程来看貌似是这样的

billge1205 commented 7 years ago

如果有callback的情况下 会先执行callback的函数 用户可在callback中自定义返回 然后die终止掉后续抛出异常的逻辑 正常情况下框架认为不通过privilege验证的 会默认抛出异常 防止因为callback不存在或者忘记抛出异常的情况下 使得正常程序逻辑继续执行

lordGuan commented 7 years ago

了解了,看来我得自己想办法实现一下前置拦截器

billge1205 commented 7 years ago

你这边的需求是怎么样的 action中可以定义init方法 和 beforeAction事件 执行顺序为 privilege => init => beforeAction => action_xxx